为什么我不应该在 MVC 3 中使用 TempData、Session 和 ViewBag ASP.NET

本文关键字:Session TempData ViewBag NET ASP 不应该 MVC 为什么 | 更新日期: 2023-09-27 18:35:52

一位同行正在审查我的代码,并告诉我以下关于我的代码:

  • 删除 ViewBag 和 TempData 的使用。
  • 避免使用"会话"。

法典:

    public partial class LandingController : BaseController
    {
        public LandingController(IPPContext ppContext, IEmailHelper emailHelper, IProvideResources resourceProvider, IOldUrlMapper urlMapper)
        {
            _ppContext = ppContext;
            _resourceProvider = resourceProvider;
            _emailHelper = emailHelper;
            _urlMapper = urlMapper;
        }
...
 public virtual ActionResult Index(string siteName, string userName = null)
...
 [HttpPost]
 public virtual ActionResult Index(Login login, string RedirectUrl)

为什么我们不使用ViewBagTempDataSession?在请求之间保存数据的替代方法有哪些?

为什么我不应该在 MVC 3 中使用 TempData、Session 和 ViewBag ASP.NET

避免会话的原因可能是因为来自相同的并发 ajax 请求将一个接一个地处理,从而降低性能。http://johnculviner.com/asp-net-concurrent-ajax-requests-and-session-state-blocking/