Я использую атрибуты 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 должно быть числом.
Как можно локализовать эти сообщения проверки неатрибутов?
Доступен ли полный список этих сообщений, чтобы я мог убедиться, что они все локализованы?