2012-09-05 63 views
1

無論輸入什麼字段,以下正則表達式屬性都會觸發錯誤。這發生在客戶端。此外,它顯示的是通用消息,而不是指定的消息。你能幫我嗎?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非連續的連字符或下劃線。「)]

回答

0

以下似乎工作正常。

[RegularExpression(@「^(a-z0-9 {0,61} [a-z0-9] | [a-z0-9])$」,ErrorMessage =「網站名稱只能包含字母從az(無口音),0-9的數字和非連續的連字符或下劃線。「)]