最佳答案
MVC 为其提供的每个数据注释验证器附带了不显眼的验证器。取自Validation with Data Annotation Validators ,这是该列表:
Using the Data Annotation Validator Attributes
When you use the Data Annotations Model Binder, you use validator attributes to perform validation. The System.ComponentModel.DataAnnotations namespace includes the following validator attributes:
- Range – Enables you to validate whether the value of a property falls between a specified range of values.
- ReqularExpression – Enables you to validate whether the value of a property matches a specified regular expression pattern.
- Required – Enables you to mark a property as required.
- StringLength – Enables you to specify a maximum length for a string property.
- Validation – The base class for all validator attributes.
- DataType - Additional validations for specific data types, like phone numbers, credit cards and email addresses. Not in the referenced link.
另请参阅https://dataannotationsextensions.apphb.com了解可以包含在您的应用程序中的其他验证器。
就客户端标签属性而言,这些属性由上述注释生成的不显眼的适配器进行处理。它们以“data-val-”为前缀。验证器的附加参数将作为附加属性添加。例如: 正则表达式变为 data-val-regex=“Message” data-val-regex-pattern=“某种模式”
来自 MVC3 jQuery.validate.unobtrusive.js
:
adapters.addSingleVal("accept", "exts")
.addSingleVal("regex", "pattern");
adapters.addBool("creditcard")
.addBool("date")
.addBool("digits")
.addBool("email")
.addBool("number")
.addBool("url");
adapters.addMinMax("length", "minlength", "maxlength", "rangelength")
.addMinMax("range", "min", "max", "range");
adapters.add("equalto", ["other"], function (options) {
// removed for brevity
});
adapters.add("required", function (options) {
// removed for brevity
});
adapters.add("remote", ["url", "type", "additionalfields"], function (options) {
// removed for brevity
});
关于asp.net-mvc - 每个验证属性的所有不显眼的验证属性的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32356661/