【发布时间】:2014-01-28 00:17:31
【问题描述】:
我正在学习 ASP.NET MVC,作为数据注释的一部分,提到了 2 种用于执行模型绑定的方法。
**
- 基于属性的绑定和验证。
- 基于 IValidatableObject 接口的自我验证模型。
**
使用其中任何一个有什么优势吗?
什么时候采用第一种方法,什么时候采用第二种方法?
【问题讨论】:
-
只有在验证规则非常复杂的情况下,我才会选择
IValidatableObject。还有额外的验证属性类可以丰富“开箱即用”验证属性的“验证语言”。对于大多数应用程序,这些属性提供了足够的智能,并且不需要额外的开发时间。 -
同意@AndreiV。对于您的基本验证,例如必填字段和正则表达式,第一种方法既快速又简单。随着您变得越来越复杂,或者如果您想将验证规则与模型分开,第二种方法,甚至是一个单独的验证类都是可行的方法。
标签: c# asp.net-mvc