MVC正则表达式数据属性验证错误地触发

时间:2012-09-05 12:38:25

标签: regex asp.net-mvc

无论在字段中输入什么,以下正则表达式属性都会触发错误。这发生在客户端。此外,它显示的是通用消息而不是指定的消息。你能帮忙吗?

公共类RegisterModel

{

    [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中的数字和非连续的连字符或下划线。“)]

1 个答案:

答案 0 :(得分:0)

以下似乎工作正常。

[RegularExpression(@“^(a-z0-9 {0,61} [a-z0-9] | [a-z0-9])$”,ErrorMessage =“网站名称只能包含来自的信件az(无重音符号),0-9的数字和非连续的连字符或下划线。“)]