加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

这个C#动作方法代码是否实际触发301重定向?

发布时间:2020-12-15 06:33:14 所属栏目:百科 来源:网络整理
导读:以下是有人访问我的电子商务网站上的产品页面时使用的代码. public ActionResult Details(int id,string slug){ using (var productRepository = new EfProductRepository()) { var product = productRepository.FindById(id); if (product == null) return
以下是有人访问我的电子商务网站上的产品页面时使用的代码.
public ActionResult Details(int id,string slug)
{
    using (var productRepository = new EfProductRepository())
    {
        var product = productRepository.FindById(id);
        if (product == null) return RedirectToAction("Index","Home");
        if (product.SEOTextSlug != slug)
            return RedirectToAction("Details",new {id = product.ProductId,slug = product.SEOTextSlug});

        var model = new ProductDetailModel();

        //Load the product information.
        model.Product.ProductId = product.ProductId;
        model.Product.CoverImagePath = product.CoverImagePath;
        model.Product.Name = product.Name;
        model.Product.Tagline = product.Tagline;
        model.Product.Price = product.Price;
        model.Product.Stock = product.Stock;
        model.Product.PieceCount = (int)product.PieceCount;
        model.Product.SKU = product.SKU;

        //Load the reviews for that product.
        if (product.Reviews.Any())
        {
            foreach (var review in product.Reviews)
            {
                model.Reviews.Add(new ReviewModel()
                {
                    ReviewId = review.ReviewId,AccountId = (int)review.AccountId,Content = review.Content,Location = review.Location,ProductId = (int)review.ProductId,PublishDate = review.PublishDate,ReviewRatingId = (int)review.ReviewRatingId
                });   
            }
        }

        return View(model);
    }
}

在这一点:

if (product.SEOTextSlug != slug)
    return RedirectToAction("Details",slug = product.SEOTextSlug});

我实际上正确地触发301重定向吗?

当然它正如我所希望的那样工作,但我想确保我返回正确的标准HTTP结果,以便搜索引擎正确响应它.

解决方法

我相信RedirectToAction返回302而RedirectToActionPermanent返回301.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读