protected override void OnActionExecuting(ActionExecutingContext filterContext)
{
filterContext.HttpContext.Response.Redirect(“/Account”);
filterContext.HttpContext.Response.End();
base.OnActionExecuting(filterContext);
return;
}
这样写它还会执行ACTION里面的后台代码,有什么办法不让它执行action里面的代码,而直接跳到本人要转到的页面.
{
filterContext.HttpContext.Response.Redirect(“/Account”);
filterContext.HttpContext.Response.End();
base.OnActionExecuting(filterContext);
return;
}
这样写它还会执行ACTION里面的后台代码,有什么办法不让它执行action里面的代码,而直接跳到本人要转到的页面.
解决方案
20
public override void OnActionExecuting(ActionExecutingContext filterContext) { var url=filterContext.HttpContext.Request.Url.ToString(); if (url.EndsWith("/")) { base.OnActionExecuting(filterContext); } else { filterContext.Result = new RedirectResult(url + "/", true); } }
这个是之前给别人回答的强制给url加个/后缀的,设定filterContext.Result ,而不是用Response.Redirect