复杂模型的条件服务器端+客户端验证

时间:2015-03-26 13:34:05

标签: asp.net asp.net-mvc validation unobtrusive-validation client-side-validation

我有一个相当复杂的模型但简而言之它看起来像这样:

class ComplexModel{
 [Required]//default MVC
 string prop1 {get;set;}
 NestedModel {get;set;}
}
class NestedModel{
 [Required]//default MVC
 [StringLength(..)]//default MVC
 string prop2 {get;set;}
}

我希望例如在某些帖子操作上运行所有[StringLength]次验证,然后说SavePartially()并对其他一些操作SaveFull()运行各种验证。

如果我有一个平面模型,我可以使用一些虚拟属性,如RunAllValidations,并使用自定义验证属性,如RequiredIf条件,但我有一个复杂的模型,所以不要想为每个嵌套模型添加这样的属性。

是否有任何解决方案可以创建某种规则集,这些规则集在客户端和服务器端都可以使用?

或者是否可以定义哪些验证器将应用于模型的某些回发操作?

0 个答案:

没有答案