直接上代码,不要说话。
ASP.NET MVC4过滤器的简单应用:验证登录
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult login(FormCollection form)
{
Session["login"] = "True";
return Redirect("/Home/Index"); }
[IsLogin]
public ActionResult Index()
{
return View();
}
//自定义过滤器
public class IsLogin : ActionFilterAttribute
{
//当方法执行时
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
//base.OnActionExecuting(filterContext);
try
{ var sess=filterContext.RequestContext.HttpContext.Session["login"];
if (sess==null ||sess.ToString()!="True")
filterContext.Result = new RedirectResult("/Home/login");
}
catch
{
filterContext.Result = new RedirectResult("/Shared/Error");
}
} //当方法执行完毕
public override void OnActionExecuted(ActionExecutedContext filterContext)
{
base.OnActionExecuted(filterContext);
}
}