首页 > Windows开发 > 详细

C# MVC4 执行特性之后不再执行Action

时间:2016-06-14 15:50:28      阅读:309      评论:0      收藏:0      [点我收藏+]

关键地方, 在OnActionExecuting函数中,不能使用filterContext.HttpContext.Response.Redirect(url)来定向,打断点可以发现一样会执行action里面代码。应该设置filterContext.Result来控制转向。

 1                     string returnUrl = HttpContext.Current.Request.Url.PathAndQuery;
 2                     var url = FormsAuthentication.LoginUrl + "?returnUrl=" + HttpUtility.UrlEncode(returnUrl);
 3                     //HttpContext.Current.Response.Redirect(url, true);//进入action
 4                     //filterContext.HttpContext.Response.Redirect(url);//进入action
 5                     /*filterContext.Result = new RedirectToRouteResult( //不进入action
 6                     new RouteValueDictionary
 7                     {
 8                         { "action", "Login" },
 9                         { "controller", "Admin" },
10                         {"returnUrl", returnUrl}
11                     });*/
12                     filterContext.Result = new RedirectResult(url);//不进入action,转到登录页面。

 

C# MVC4 执行特性之后不再执行Action

原文:http://www.cnblogs.com/xygui/p/5584033.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!