Tôi có một biến phiên được đặt trong ứng dụng MVC của mình. Bất cứ khi nào phiên đó hết hạn và người dùng cố gắng làm mới trang mà họ đang truy cập, trang sẽ ném một lỗi vì phiên không được đặt nữa.MVC Tương đương với Page_Load
Có nơi nào tôi có thể kiểm tra xem phiên được đặt trước khi tải chế độ xem không? Có lẽ đặt một cái gì đó bên trong tập tin Global.asax?
Tôi có thể làm điều gì đó như thế này vào đầu EVERY ActionResult.
public ActionResult ViewRecord()
{
if (MyClass.SessionName == null)
{
return View("Home");
}
else
{
//do something with the session variable
}
}
Có cách nào khác để thực hiện việc này không? Thực hành tốt nhất trong trường hợp này là gì?
Bạn cần một bộ lọc hành động tùy chỉnh, một số biết thêm http: // MSDN .microsoft.com/en-us/gg618482 –
Thảo luận tương tự tại đây: http://forums.asp.net/t/1287687.aspx –
Ngoài nhận xét của @ ChrisDiver, nếu bạn cần nó áp dụng cho tất cả các bộ điều khiển/hành động của bạn , bạn có thể trang trí bộ điều khiển cơ sở mà tất cả các bộ điều khiển khác của bạn kế thừa. – Chris