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

时间:2013-10-17 15:46:24

标签: c# .net asp.net-mvc asp.net-mvc-3

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

  • 删除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?在请求之间保存数据的替代方法是什么?

1 个答案:

答案 0 :(得分:2)

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

相关问题