StringLengthAttribute
所述 StringLength
属性指定被允许在一个数据字段中的字符的最小和最大长度。此属性可以应用于属性,公共字段和参数。必须在属性的 ErrorMessage
属性上指定错误消息。 MinimumLength
和 MaximumLength
属性分别指定最小值和最大值。
首先添加命名空间:
using System.ComponentModel.DataAnnotations;
并在属性上应用该属性。
public class User
{
// set the maximum
[StringLength(20, ErrorMessage = "The username cannot exceed 20 characters. ")]
public string Username { get; set; }
[StringLength(MinimumLength = 3, MaximumLength = 16, ErrorMessage = "The password must have between 3 and 16 characters.")]
public string Password { get; set; }
}
还可以在错误消息中使用资源用于全局化应用程序。在这种情况下, ErrorMessageResourceName
必须与必须在被设置好的资源类(resx
文件)的资源键指定 ErrorMessageResourceType
:
public class User
{
[StringLength(20, ErrorMessageResourceName = "StringLength",
ErrorMessageResourceType = typeof(ResoucesKeys))]
public string Username { get; set; }
[StringLength(MinimumLength = 3,
MaximumLength = 16,
ErrorMessageResourceName = "StringLength",
ErrorMessageResourceType = typeof(ResoucesKeys))]
public string Password { get; set; }
}