首先說一下,有種情況就是session半個小時後自動失效,會出現跳到登錄頁面會有畫中畫的效果,然而可以通過Attribute解決,通常情況下一般都是通過ajax請求,所以呢,下面的方法可以解決
1 public class UserAuthorizeAttribute : AuthorizeAttribute 2 { 3 public override void OnAuthorization(AuthorizationContext filterContext) 4 { 5 // ajax 請求 6 if (filterContext.HttpContext.Request.IsAjaxRequest()) 7 { 8 9 filterContext.Result = new JavaScriptResult() 10 { 11 Script = "window.location='" + "/Login" + "';" 12 }; 13 } 14 else 15 { 16 filterContext.Result = new RedirectResult("/Login"); 17 } 18 } 19 }
一般.net都有登錄控制,所以以下的實現大家應該可以理解。
1 [UserAuthorize] 2 public class EntitledGroupsController 3 { 4 //代碼 5 }