首页新闻找找看学习计划

MVC跳转,重定向的问题。

0
悬赏园豆:20 [已解决问题] 解决于 2015-05-27 13:05

我想在所有的请求执行前判断一下,符合条件后直接跳转到另外一个url,比如www.baidu.com,而不执行下面的action,应该怎么做?

MVC
Eysa的主页 Eysa | 初学一级 | 园豆:70
提问于:2015-03-17 12:27
< >
分享
最佳答案
0

如果是MVC页面,可以添加到全局过滤器,在global.asax里去注册一下.过滤器实现一下ActionFilterAttribute即可

public class UrlFilterAttribute : System.Web.Mvc.ActionFilterAttribute{

    public override void OnActionExecuting(System.Web.Mvc.ActionExecutingContext filterContext)
        {

      //添加你的具体逻辑

    }

  }

 

 

收获园豆:20
张占岭 | 菜鸟二级 |园豆:464 | 2015-03-17 18:01
其他回答(7)
0

新建一个控制器,在你其他的控制器里继承,在这个控制器里进行验证,不通过的直接。 return this.Redirect(URl);即可。

贫民窟大侠 | 园豆:4270 (老鸟四级) | 2015-03-17 12:45

 你这一行代码必然是要写在BaseController的某个action下,如果用户不请求这个action怎么搞?

支持(0) 反对(0) Eysa | 园豆:70 (初学一级) | 2015-03-17 12:55

@Eysa: basecontroller里不用写action阿。直接写方法判断啊。不太友好的就是你所有的控制器都需要继承一下这个就行了。实在不行可以去看看过滤器!

支持(0) 反对(0) 贫民窟大侠 | 园豆:4270 (老鸟四级) | 2015-03-18 09:09
0

利用特性可以实现!

晓菜鸟 | 园豆:2594 (老鸟四级) | 2015-03-17 14:38
0

新建一个baseController,你所有的controller都继承这个

在baseController里面做验证跳转

茂茂 | 园豆:2860 (老鸟四级) | 2015-03-17 15:29
0

要么BaseController,要么全局Filter。

幻天芒 | 园豆:36544 (高人七级) | 2015-03-17 17:19
0

Application_BeginRequest

{Response.Redirect}

good luck

刚哥521 | 园豆:320 (菜鸟二级) | 2015-03-17 17:25
0

过滤器

吴瑞祥 | 园豆:28736 (高人七级) | 2015-03-18 12:44
0

用过滤器实现比较好。

mczxmin | 园豆:196 (初学一级) | 2015-03-19 09:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册