Локализация MVC 3 клиентских проверочных сообщений - PullRequest
1 голос
/ 30 июня 2011

Я работаю над проектом ASP.Net MVC 3, которому нужны локализованные сообщения об ошибках из правил проверки.

Есть ли способ сделать это на стороне клиента?

Я могужить с английскими сообщениями проверки на стороне сервера, поскольку клиентские сообщения всегда должны запускаться (я не боюсь, что мои пользователи отключат javascript, так как это сайт в Интранете)

, хотя я могу использовать DataAnnotations для таких вещей, как [Обязательно] и [StringLength], такой опции (похоже) для проверки типа данных не существует.

Если, например, у меня есть int Portions в моей модели представления, это автоматически проверяет ввод, чтобы убедиться, что это int.Справедливо, но сообщение проверки всегда на английском языке: - (

Предположим, моя модель выглядит следующим образом:

public class RecipeModel
{

[Display(Name = "Navn")]
[Required(ErrorMessage = "Skal udfyldes")]
public string Name { get; set; }

[Display(Name = "Portioner")]
public int Portions { get; set; }

}

Как вы можете видеть, у меня есть собственное сообщение об ошибке для "Имя",однако, если я попытаюсь ввести текст в EditorFor (Portions), он покажет мое следующее сообщение об ошибке:

«Поле Portioner должно быть числом.»

И это сообщение об ошибке, которое я хочулокализации. К сожалению, для этого встроенного валидатора нет DataAnnotation (проверяющего, что это int).

Я даже пытался использовать аннотацию DataType типа Custom, но безрезультатно: - (

1 Ответ

1 голос
/ 30 июня 2011

Вы можете создавать свои собственные сообщения проверки, используя аннотации данных с вашей моделью. Если вы хотите поддерживать несколько языков, вы можете создать файл ресурсов для каждого языка и связать аннотацию данных с идентификатором сообщения в файле ресурсов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...