ASP.NET MVC4 Локализация ненавязчивой валидации

Проблема:

У меня проблемы с локализацией сообщений по умолчанию для неявных атрибутов [Required] с помощью ненавязчивой валидации jquery. Я не хочу ставить [Required] для каждого int (и других не nullable типов) в моей модели и связанном с ней файле ресурсов. Мне интересно, тестировал ли кто-нибудь ASP.NET MVC4 Dev Preview и заметил ту же проблему? Когда я смотрю на код mvc, кажется, что он должен работать.

Попытка решения:

Добавил в global.asax:

DefaultModelBinder.ResourceClassKey = "ErrorMessages";

В глобальных ресурсах с PropertyValueInvalid и PropertyValueRequired иметь файл ресурсов под названием "ErrorMessages.resx" и "ErrorMessages.fr.resx".

Интересная информация:

Хорошая вещь, которую я заметил, это то, что они исправили "Field must be a number" или "Field must be a date" от жесткого кодирования во внутреннем запечатанном классе.

ClientDataTypeModelValidatorProvider.ResourceClassKey = "ErrorMessages"; 

Работает, если у вас есть файл ресурсов под названием "ErrorMessages.resx" и "ErrorMessages.fr.resx" в глобальной папке ressources и FieldMustBeNumeric/FieldMustBeDate

6
задан Nick-ACNB 30 November 2011 в 20:09
поделиться