0
我需要检查,如果登录的用户做仍然存在于数据库中,如果不是我需要重定向到另一个网页。
财产以后这样的:
if (AccountHandler.Instance.UserIdentityName.Length > 0)
{
AccountModel accountModel = new AccountModel();
if (!accountModel.AccountExists(AccountHandler.Instance.UserIdentityName))
{
FormsAuthentication.SignOut();
HttpContext.Current.Items[HttpContextKey.UserContext.ToString()] = null;
return Redirect(Request.UrlReferrer.PathAndQuery);
}
}
如何做到这一点的ASP.NET MVC?我已经尝试过Global.asax Application_BeginRequest,但是这会针对每个请求触发,所以不应该在这里放置重定向。
这是可能的MVC2,如果是这样,如何? – Banshee 2012-03-04 15:49:37
我不认为全局过滤器在MVC2中可用。我想,你必须去那里的基地控制器路线。如果可以的话,值得升级到MVC3。请注意,它基本上是在不同位置实现的相同代码,并且您必须记住从基本控制器派生并调用基本行为(如果在子控制器中覆盖该方法)。 – tvanfosson 2012-03-04 15:55:20