Как заменить сообщение об ошибке ModelState по умолчанию в Asp.net MVC 2?

StackOverflow https://stackoverflow.com/questions/1538873

Вопрос

Мне нужно заменить ресурс состояния модели (на другой язык).

Я видел несколько ответов на вопрос выше, но, к сожалению, не смог заставить его работать.Любой подробный ответ или пример будут оценены.

Спасибо.

Это было полезно?

Решение

Понятно.

В ASP.NET MVC 2 RC это СвойствоValueInvalid, нет Недопустимое значение свойства.

Другие советы

Я не знаю насчет версии 2, но это работает на версии 1:

  1. Добавьте файл ресурсов в App_GlobalResources.
  2. В файле ресурсов вы можете определить строки с именем PropertyValueInvalid и PropertyValueRequired.
  3. В наборе событий Application_Start global.asax System.Web.Mvc.DefaultModelBinder.ResourceClassKey = "resource file name".

Попробуйте использовать:<%= Html.ValidationMessage("Цена") %> без звездочки "*".

Синтия, попробуй добавить это в свой web.config.

  <compilation debug="true" targetFramework="4.0">
      <buildProviders>
        <add extension=".resx" type="System.Web.Compilation.ResXBuildProvider"/>
        <add extension=".resources" type="System.Web.Compilation.ResourcesBuildProvider"/>
      </buildProviders>
  </compilation>

MVC-вызовы httpContext.GetGlobalResourceObject(ResourceClassKey, "InvalidPropertyValue", CultureInfo.CurrentUICulture) чтобы найти сообщение, иногда вам необходимо добавить этих поставщиков в GetGlobalResourceObject, чтобы найти правильный ресурс.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top