流畅的验证与数据注释

时间:2011-07-24 14:43:08

标签: .net asp.net-mvc data-annotations fluentvalidation

您更喜欢ASP.NET MVC验证的哪种方法?为什么? Fluent ValidationData annotations?还有其他吗?

2 个答案:

答案 0 :(得分:105)

我更喜欢Fluent Validation

  1. 它让我可以更好地控制我的验证规则
  2. 与Data Annotations相比,对不同属性进行条件验证要容易得多。
  3. 它将验证与我的视图模型分开
  4. 与数据注释相比,
  5. Unit testing要容易得多
  6. 它为大多数标准验证规则提供了出色的客户端验证支持

答案 1 :(得分:24)

我显然更喜欢数据注释,因为......

  1. 可以在代码中的一个位置(在模型元数据类中)配置所有验证规则,并且不需要在其他任何地方重复。
  2. 在使用数据注释属性时,非常支持客户端验证(再次 - 不重复验证规则!)。
  3. 数据注释属性可以测试以确保它们存在。
  4. 社区创建了很好的其他验证属性(例如Data Annotations Extensions)。