为什么我不应该在 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)
为什么我们不使用ViewBag
、TempData
或Session
?在请求之间保存数据的替代方法有哪些?
避免会话的原因可能是因为来自相同的并发 ajax 请求将一个接一个地处理,从而降低性能。http://johnculviner.com/asp-net-concurrent-ajax-requests-and-session-state-blocking/