public static CustomerInfo Customer
{
get
{
if (System.Web.HttpContext.Current.Session["CustomerData"] == null)
{
System.Web.HttpContext.Current.Response.Redirect("~/Account/Login");
return new CustomerInfo();
}
else
{
return (CustomerInfo)System.Web.HttpContext.Current.Session["CustomerData"];
}
}
set
{
System.Web.HttpContext.Current.Session["CustomerData"] = value;
}
}
每當HttpContext.Current.Session["CustomerData"]
是null
,而不是重定向到登錄鑑於賬戶控制器它給例外。MVC5路由編程C#
一個屬性的getter與副作用是一個壞主意。 – Amy
使用[action filter](https://www.codeproject.com/Articles/1095295/Check-Session-Timeout-by-Using-ActionFilters-in-MV)檢查會話並重定向。 –
感謝史蒂夫建議使用操作過濾器,但是可以將它重定向到getter的登錄視圖。 – Madhurima