如何替换 Asp.net MVC 2 中默认的 ModelState 错误消息?

发布于 2024-08-06 22:51:22 字数 96 浏览 4 评论 0原文

我需要替换模型状态资源(到另一种语言)。

我已经看到了上述问题的一些答案,但不幸的是我无法使其发挥作用。 任何详细的答案或例子都会被采纳。

谢谢。

I need to replace the model state resource (to another language).

I've seen some answers to the question above, but unfortunately I could'nt make it work.
Any detailed answer or example would be appriciated.

Thank you.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

背叛残局 2024-08-13 22:51:22

我不知道 v2,但这适用于 v1:

  1. 在 App_GlobalResources 中添加资源文件。
  2. 在资源文件中,您可以定义名为 PropertyValueInvalidPropertyValueRequired 的字符串。
  3. 在 Application_Start global.asax 事件上设置 System.Web.Mvc.DefaultModelBinder.ResourceClassKey = "资源文件名"

I don't know about v2, but this works on v1:

  1. Add a resource file in App_GlobalResources.
  2. In the resource file you can define strings named PropertyValueInvalid and PropertyValueRequired.
  3. On the Application_Start global.asax event set System.Web.Mvc.DefaultModelBinder.ResourceClassKey = "resource file name".
昵称有卵用 2024-08-13 22:51:22

知道了。

在 ASP.NET MVC 2 RC 中,它是 PropertyValueInvalid,而不是 InvalidPropertyValue

Got It.

In ASP.NET MVC 2 RC, It is PropertyValueInvalid, not InvalidPropertyValue.

习ぎ惯性依靠 2024-08-13 22:51:22

尝试使用: <%= Html.ValidationMessage("Price") %>没有星号“*”。

Try using: <%= Html.ValidationMessage("Price") %> without the star "*".

淡淡绿茶香 2024-08-13 22:51:22

Cynthia,尝试将其添加到您的 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 中以查找正确的资源

Cynthia, try to add this into your 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 calls httpContext.GetGlobalResourceObject(ResourceClassKey, "InvalidPropertyValue", CultureInfo.CurrentUICulture) to find the message, and sometimes you must add those providers to GetGlobalResourceObject find the correct resource

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文