我正在构建一些MVC应用程序,我非常喜欢MVC中的数据注释支持。支持构建足以执行简单的验证检查。我想知道,如何使用自定义数据注释来实现独特字段验证?例如,我有一个视图模型,需要用户注册一个新的登录名,有没有办法检查(使用Model.IsValid)在调用db提交之前名称是否不存在?如何在MVC中实施唯一字段验证
2
A
回答
1
你可以编写自己的验证器属性来检查我猜的数据库,或者你可以加载所有数据并检查它。
我会更倾向于试图写入数据库并在表中具有唯一约束。如果您收到一个错误,指出存在重复的插入错误,那么您只需向用户显示该错误。
我不会期待阅读和检查自己。
编辑
我想你也可以做的检查中,做插入的代码。你可以做一个阅读,如果没有发现,然后插入。
如果您确实找到了重复项,您可以添加到模型验证违规规则并返回,以便错误出现在页面上的验证摘要中。
-1
创建自己的属性,该属性继承自ValidationAttribute(DataAnnotations命名空间中所有验证属性的基础)。使用用户标识唯一性检查覆盖IsValid方法。
相关问题
- 1. 验证Django中的唯一字段
- 2. 在rails中,如何验证不唯一的字段?
- 3. 验证IPv6实施
- 4. Doctrine PHP 1.2 - 如何跳过空字段的唯一验证
- 5. 如何验证两个字段的唯一性
- 6. HTML MVC 3字段验证
- 7. jquery字段验证onblur(mvc)
- 8. asp.net mvc datannotation唯一字段
- 9. MVC验证 - 更新另一个字段?
- 10. 如何实施Wpf组合框验证
- 11. 在cakephp中验证字段与作用域是唯一的
- 12. 在MVC中实现验证
- 13. 在窗体中验证字段是一个在MVC中的INT
- 14. 在GAE中实施唯一约束
- 15. 如何在Laravel 4中添加组合的唯一字段验证器规则
- 16. 如何在MVC中进行多字段验证?
- 17. ASP.NET MVC - 验证模型的唯一性
- 18. 唯一验证属性MVC 2
- 19. Spring Form验证实施
- 20. 实施JWT身份验证
- 21. Django验证列组合存在(唯一与布尔字段)
- 22. 验证DataMapper中组合字段的唯一性
- 23. Google表单中的唯一字段验证
- 24. Laravel验证:仅在另一个验证字段时验证字段
- 25. 如何使字段值在实体框架中唯一
- 26. jQuery验证只验证一个字段
- 27. JPA验证唯一
- 28. 在asp.net中验证数据注释的唯一性mvc
- 29. 实施相关实体的唯一性
- 30. jquery验证:我如何使一个字段验证变化?
对不起,我没有说清楚。我知道我可以执行自定义验证属性,但为了执行唯一性检查,我需要将对象或db上下文/存储库的列表传递给验证逻辑,我不确定它是否合适。 – xandy 2010-03-31 07:27:37