首页 新闻 搜索 专区 学院

MVC中如何实现在OnActionExecuting执行model验证

0
悬赏园豆:5 [已解决问题] 解决于 2016-11-02 23:05

 因为用了MVC的模型验证 在action中都要加上这段代码

if (ModelState.IsValid)
  {

  }

所以我想在
 public void OnActionExecuting(ActionExecutingContext filterContext)
    {
         if (!ModelState.IsValid)
            {
              throw new Exception();
            }
    }                

全局过滤器中执行这段代码

但是 在过滤器中貌似拿不到 

ModelState.IsValid

我现在能想到的解决思路 第一个就是实现自己用代码实现MVC的模型验证
还有一个就是在拓展controller 在action里面注入代码
请问一下还有没有其他思路
微风吹过12x的主页 微风吹过12x | 初学一级 | 园豆:73
提问于:2016-11-02 20:23
< >
分享
最佳答案
0

filterContext.Controller.ViewData.ModelState

千万别客气!

收获园豆:5
czd890 | 大侠五级 |园豆:8893 | 2016-11-02 22:54

  卧槽 非常感谢

微风吹过12x | 园豆:73 (初学一级) | 2016-11-02 23:04
其他回答(2)
0

可以尝试塞到静态变量中或者session中,随用随取

~扎克伯格 | 园豆:1837 (小虾三级) | 2016-11-02 22:25

 你有看我的提问吗

支持(0) 反对(0) 微风吹过12x | 园豆:73 (初学一级) | 2016-11-02 22:27

@苟活的意义: 就你这样的人怎么会有人给你正确答案呢?悲哀

支持(0) 反对(0) ~扎克伯格 | 园豆:1837 (小虾三级) | 2016-11-03 08:34

@IT民工-杰: 你自己答非所问凭什么来指责我.我问的问题很简单,已经有人回答我了.不劳烦你了

支持(0) 反对(0) 微风吹过12x | 园豆:73 (初学一级) | 2016-11-03 09:06

@苟活的意义: 四年了还提这么low的问题!悲哀

支持(0) 反对(0) ~扎克伯格 | 园豆:1837 (小虾三级) | 2016-11-03 09:08

@IT民工-杰: 在现实生活中是过得有多low才喜欢跑到网上来秀优越感?

支持(0) 反对(0) 微风吹过12x | 园豆:73 (初学一级) | 2016-11-03 09:09

@苟活的意义: 唉,悲哀!四年了还这么low

支持(0) 反对(0) ~扎克伯格 | 园豆:1837 (小虾三级) | 2016-11-03 09:12
0

可以自己实现验证通过重写【ValidationAttribute】

Jeffcky | 园豆:2563 (老鸟四级) | 2016-11-02 22:35
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册