旨在为目标Action方法的执行绑定输入参数的Model绑定过程伴随着对Model的验证。借助相应的验证特性,我们可以直接以声明的方式在Model类型上定义验证规则,这些规则将会作为Model元数据的一部分。具体在Model绑定过程中,ModelBinder通过ValueProvider为Model对象的某个属性提供相应属性值之后,会根据定义在基于该属性的Model元数据的验证规则实施验证。ASP.NET MVC的整个Model验证系统以组件ModelValidator为核心,或者说Model对象的验证最终通过某个ModelValidator对象来完成,所以我们有必要先来认识一下ModelValidator以及背后的提供机制。[本文已经同步到《How ASP.NET MVC Works?》中]

目录
一、ModelValidator
二、DataAnnotationsModelValidator
三、ClientModelValidator
四、DataErrorInfoModelValidator
五、ValidatableObjectAdapter

在ASP.NET MVC应用编程接口中,所有的ModelValidator都直接或者间接地继承自抽象类型ModelValidator。如下面的代码片断所示,ModelValidator具有一个布尔类型的只读属性IsRequired,表示该ModelValidator是否是对目标数据进行必要性的验证,默认返回False。GetClientValidationRules返回一个元素类型为ModelClientValidationRule的集合。ModelClientValidationRule是对客户端验证规则的封装,我们会在进行客户端验证时对其进行详细介绍。

class ModelValidator
   2: {
//其他成员    
virtual IEnumerable<ModelClientValidationRule> GetClientValidationRules();
object container);
   6:     
bool IsRequired { get; }
   8: }

相关文章:

  • 2022-03-06
  • 2021-11-07
  • 2022-01-15
  • 2021-09-06
  • 2022-12-23
猜你喜欢
  • 2021-12-23
  • 2021-09-23
  • 2021-06-07
  • 2021-11-06
  • 2021-05-26
  • 2021-11-08
相关资源
相似解决方案