当用于 ASP.NET MVC 验证时,这两个验证包之间的操作差异是什么?它们似乎有相似的对象,一直到它们的对象名称。一个与另一个有关吗?他们有什么区别?这些差异以何种方式表示不同的用例?
Fluent Validation(第 3 方解决方案)
数据注释(微软“烘焙”)
我更喜欢 Fluent Validation:
它使我可以更好地控制我的验证规则与数据注释相比,对不同属性进行条件验证要容易得多它将验证与我的视图模型分开与数据注释相比单元测试要容易得多它对大多数情况都有出色的客户端验证支持标准验证规则
我显然更喜欢数据注释,因为......
所有验证规则都可以在代码中的一个位置(在模型元数据类中)配置,并且不需要在其他任何地方重复。使用 Data Annotation 属性时,对客户端验证有很好的支持(同样——无需重复验证规则!)。可以测试数据注释属性以确保它们存在。社区创建了很好的附加验证属性(例如数据注释扩展)。
不定期副业成功案例分享