Я использую атрибуты DataAnnotations вместе с ASP.Net MVC 2 для обеспечения проверки модели для моих ViewModels:
public class ExamplePersonViewModel {
[Required(ErrorMessageResourceName = "Required", ErrorMessageResourceType = typeof(Resources.Validation))]
[StringLength(128, ErrorMessageResourceName = "StringLength", ErrorMessageResourceType = typeof(Resources.Validation))]
[DataType(DataType.Text)]
public string Name { get; set; }
[Required(ErrorMessageResourceName = "Required", ErrorMessageResourceType = typeof(Resources.Validation))]
[DataType(DataType.Text)]
public int Age { get; set; }
}
Это, похоже, работает как ожидалось (хотя оно очень многословно). Проблема заключается в том, что выполняются проверки за кадром, которые не привязаны к какому-либо конкретному атрибуту. Пример этого в приведенной выше модели заключается в том, что свойство Age
должно быть int
. Если вы попытаетесь ввести нечетное значение в форме, это приведет к ошибке со следующим (нелокализованным) сообщением:
Поле Age должно быть числом.
Как можно локализовать эти сообщения проверки неатрибутов?
Есть ли полный список этих сообщений, чтобы я мог убедиться, что все они локализованы?