因为用了MVC的模型验证 在action中都要加上这段代码
if (ModelState.IsValid) { }
所以我想在
public void OnActionExecuting(ActionExecutingContext filterContext) { if (!ModelState.IsValid) { throw new Exception(); } }
全局过滤器中执行这段代码
但是 在过滤器中貌似拿不到
ModelState.IsValid
我现在能想到的解决思路 第一个就是实现自己用代码实现MVC的模型验证
还有一个就是在拓展controller 在action里面注入代码
请问一下还有没有其他思路
filterContext.Controller.ViewData.ModelState
千万别客气!
卧槽 非常感谢
可以尝试塞到静态变量中或者session中,随用随取
你有看我的提问吗
@苟活的意义: 就你这样的人怎么会有人给你正确答案呢?悲哀
@IT民工-杰: 你自己答非所问凭什么来指责我.我问的问题很简单,已经有人回答我了.不劳烦你了
@苟活的意义: 四年了还提这么low的问题!悲哀
@IT民工-杰: 在现实生活中是过得有多low才喜欢跑到网上来秀优越感?
@苟活的意义: 唉,悲哀!四年了还这么low
可以自己实现验证通过重写【ValidationAttribute】