无论在字段中输入什么内容,以下正则表达式属性都会触发错误。这发生在客户端。此外,它显示的是通用消息而不是指定消息。你能帮我吗?
公共类注册模型
{
[Required]
[StringLength(63, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)]
[RegularExpression(@"/^[a-z\d]+([-_][a-z\d]+)*$/i",ErrorMessage="The Site Name can only contain letters from a-z (no accents), numbers from 0-9 and non consecutive hyphens or underscores.")]
[Display(Name = "Site Name")]
public string UserName { get; set; }
}
以下不同的正则表达式有效,因此它必须是表达式本身或 @(字符串文字)字符的问题,因为 \d 组合是 C# 转义字符。
RegularExpression("^[a-zA-Z][a-zA-Z0-9]+", ErrorMessage = "站点名称只能包含 az 中的字母(无重音符号)、0-9 中的数字和非连续连字符或下划线。")]