3
在我的ASP.NET MVC應用程序中,我有一個表單,並且我使用了ViewModel,因此ModelBinder可以綁定到我的強類型類。我正在使用DataAnnotations進行驗證禁用'值'xxx'對'yyy'消息無效
public class FormViewModel
{
[Required]
public string SomeValue {get;set;}
[Range(0, 10, ErrorMessage="Enter a number between 0 and 10.")]
public byte? SomeOtherValue {get;set;}
}
This works great。然而,問題是當用戶沒有爲SomeOtherValue輸入一個有效值(比如abc)時,彈出一個標準的MVC錯誤:''abc'值'SomeOtherValue'無效。這真的很煩人,因爲我無法自定義此消息。我知道有些方法可以本地化此消息,但這樣做沒有意義(我不想要一般消息,我想要一個特定於值的值)。
我嘗試將RegularExpression屬性應用於'SomeOtherValue',它只允許字節值,但可能是標準驗證'覆蓋'此驗證。是否有某種方法可以爲屬性應用自定義的「值無效」消息,否則禁用標準消息?
當然,這將使用該消息替換該字段的所有錯誤...您可以執行額外的檢查,並且僅在以「值」開始時才替換錯誤等。 – MikeSmithDev 2013-10-10 20:51:14