我的模型中有一个类似于
的字段[Display(Name = "CompanyType", ResourceType = typeof(Captions), AutoGenerateFilter = true)]
[Lookup(LookupTextField = "TypeForDisplay", LookupEntity = "Type", LookupColumns = new[] { "TypeForDisplay" }, LookupType = LookupType.DropDown)]
public Guid? TypeID{ get; set; }
我想在该属性中添加Required,但不是在所有casses中添加。它取决于模型中另一个属性的值。 最好(最简单)的方法是什么?
答案 0 :(得分:0)
您可以创建自定义验证程序来完成此操作。
Here是一个关于如何实现它的教程。
答案 1 :(得分:0)
https://foolproof.codeplex.com/
使用上面的链接下载包。添加对包含的.dll文件的引用
在
等属性的顶部使用[RequiredIf]
[RequiredIfNot]
答案 2 :(得分:0)
在您的模型上实现IValidatableObject。然后,您可以实现Validate方法来执行一种您需要的自定义验证。
以下是http://weblogs.asp.net/scottgu/class-level-model-validation-with-ef-code-first-and-asp-net-mvc-3
的示例这里还有一个指向RequiredIf实现的链接,该实现同时具有服务器和客户端验证。 RequiredIf Conditional Validation Attribute