【发布时间】:2009-09-20 14:10:08
【问题描述】:
我们正面临一个场景..这是:
我们的客户模型有地址对象的集合。该表格显示 3 个地址供客户输入。然而,只有第一个地址是强制性的。 现在我们的验证在地址模型上,类似于“街道地址不能为空”。
所以在提交表单时,对所有 3 个地址都执行了验证,即使第二个和第三个地址不是强制性的,验证摘要也会显示两次“街道地址 1 不能为空”的消息。
那么我们怎样才能使第二个和第三个地址的验证成为可选的呢? like it 只有在客户输入第二个和第三个地址时才会执行验证。我们只想使用服务器端验证。
或者在控制器中是否有办法从模型状态中删除错误消息并强制将 ModelState.IsValid 设置为 true ?
【问题讨论】:
-
我一直在努力理解,为什么,为什么,为什么人们使用默认的验证模型,然后试图解决它的所有限制,而不是从一开始就使用他们自己的验证层。
-
经验教我们!!我从我的知识开始。通过指出创建自定义验证(文章和示例)的正确方向来帮助我,我将进行探索。
标签: asp.net-mvc model-view-controller validation