当用于ASP时,这两个验证包之间的操作差异是什么?NET MVC验证?它们似乎有相似的对象,一直到它们的对象名称。一个与另一个相关吗?它们有什么不同?这些差异以何种方式表示不同的用例?
- Fluent Validation(第三方解决方案)
- Data annotations(Microsoft“baked-in”)
当用于ASP时,这两个验证包之间的操作差异是什么?NET MVC验证?它们似乎有相似的对象,一直到它们的对象名称。一个与另一个相关吗?它们有什么不同?这些差异以何种方式表示不同的用例?
2条答案
按热度按时间vjrehmav1#
我更喜欢Fluent Validation:
1.它使我能够更好地控制我的验证规则
1.与数据注解相比,对不同属性执行条件验证要容易得多
1.它将验证与视图模型分离
1.它为大多数标准验证规则提供了出色的客户端验证支持
cbeh67ev2#
注:在评论中,原作者表示他现在更喜欢流畅的验证
我更喜欢数据注解,因为。..
1.所有验证规则都可以在代码中的一个地方(在模型元数据类中)配置,不需要在其他任何地方重复。
1.对客户端验证有很好的支持(再次-没有重复验证规则!)使用 Data Annotation 属性时。
1.Data Annotation 属性可以测试以确保它们存在。
1.存在由社区创建的很好的附加验证属性(例如,例如Data Annotations Extensions)。