我注意到,如果我的會話在我的站點上過期,然後點擊Ajax.ActionLink,登錄頁面將顯示在PartialView中。我已經創建了OnActionExecuting方法的重寫,像這樣:ASP.NET MVC-無法加載Response.Redirect中的資源
protected override void OnActionExecuting(ActionExecutingContext ctx)
{
if (!ctx.HttpContext.User.Identity.IsAuthenticated)
{
if (ctx.RequestContext.HttpContext.Request.IsAjaxRequest())
{
//ctx.RequestContext.HttpContext.Response.RedirectToRoute(new { controller = "Account", action = "LogOn" });
ctx.RequestContext.HttpContext.Response.Redirect(Url.RouteUrl(new { controller = "Account", action = "LogOn" }));
}
}
}
如果用戶被認證,然後,如果請求是一個AjaxRequest此檢查。如果用戶不再對Ajax actionlink進行身份驗證,它會將用戶重定向到我的賬戶控制器中的LogOn方法。問題是我在控制檯中得到「無法加載資源」。