ASP.NET MVC - 会话过期与登录视图一起呈现为部分视图

时间:2012-02-15 11:56:31

标签: asp.net-mvc-3 forms-authentication

我注意到如果我在我的View上使用Ajax.ActionLink并且我的会话已经过期(例如......我已经暂停了一段时间)。它不是被重定向到Login View,而是加载到我的Ajax.ActionLink中的UpdateTargetId集合中。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

您可以尝试这样的事情:

public ActionResult MyAction()
{
  if(Request.IsAuthenticated == false)
  {
    throw new HttpException(500, "message here");
  }
  else
  {
    // logic here
  }
}

然后为ActionLink的OnFailure的{​​{1}}属性实现一个函数,该属性重定向到登录页面。不要抛出404,因为它会导致登录视图再次加载AjaxOptions