我总是用ModelState.IsValid
用于检查我在服务器端正确验证的所有模型验证,但我认为使用它有一个限制。例如我定义一个Remote
验证属性,但如果我禁用javascript
then ModelState.IsValid
不勾选Remote Validation总是返回true,问题出在哪里?这是一个限制ModelState.IsValid
还是我的错?如果有必要,我可以添加我的所有实现。
这个问题已经出现过好几次了。答案是:它不在服务器端进行验证,您必须自己执行验证操作。另请参阅以下 SO 帖子:
- asp.net mvc 3 服务器端远程验证无法通过 fiddler 提交 https://stackoverflow.com/questions/7547674/asp-net-mvc-3-serverside-remote-validation-not-working-on-submit-through-fiddler
- RemoteAttribute 验证器不会触发服务器端 https://stackoverflow.com/questions/5393020/remoteattribute-validator-does-not-fire-server-side
当然,如果能够在服务器端对其进行验证那就太好了。幸运的是,一些好人为它做了一个实现。您可以找到他的简短博客文章:http://www.tugberkugurlu.com/archive/asp-net-mvc-server-side-remote-validation http://www.tugberkugurlu.com/archive/asp-net-mvc-server-side-remote-validation .
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)