ASP.NET MVC4 多语言数据注释

2023-11-23

在标准应用程序中,我有以下内容:

[Required]
[DisplayName("Email Address")]
public string EmailAddress { get; set; }

...这反过来会自动为该表单字段生成英文标签。

现在,如果我需要我的应用程序支持 5 种语言,那么 ASP.NET MVC 应用程序处理此问题的最佳方法是什么?

适用范围约为400-600个数据字段。

更新:我还需要支持更新应用程序中的小部分文本,例如页面名称和每个表单的介绍(小段落)。


不要将实际值分配给属性属性,而是为资源字符串分配键。然后,您可以使用自定义ModelMetadataProvider它了解本地化上下文并将提供适当的字符串。为了获得更好的解决方案,您可以定制ModelMetadataProvider推断约定(这减少了对详细属性的需要)。

Phil Haack 有一篇博客文章名为使用约定的模型元数据和验证本地化这解释了这是如何工作的。还有一个对应的 NuGet 包,名为模型元数据扩展源代码可在 github 上找到https://github.com/Haacked/mvc-metadata-conventions .

作为旁注,我建议回顾一下我在一个老问题上得到的一些很棒的答案:.NET 中的有效本地化策略。它们没有专门解决您的问题,但如果您正在开发多语言 .NET 应用程序,它们将非常有帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ASP.NET MVC4 多语言数据注释 的相关文章

随机推荐

  • TypeScript 中的超类型约束

    我正在尝试使用updeep图书馆 一个典型的使用示例updeep是这样的 var person name first Jane last West var result u name first Susan person 这里的想法是res
  • 在 FireMonkey 中根据 XSD 验证 XML 文件

    我正在开发一个跨平台应用程序 适用于 Windows Mac 等 以及 32 位和 64 位机器 我有很多 XML 文件 我需要根据它们进行验证XSD Delphi XE3中有没有办法做到这一点 我尝试过 DTD 验证 但总是收到 DTD
  • 我的本地 git 存储库在 git 远程引用了超过 1 个应用程序。我无法推送到heroku

    我无法将我的应用程序部署到heroku git Remote 中的多个应用程序 我该如何解决这个问题 Error Multiple apps in git remotes Usage remote origin or app arcane
  • 将路由拆分为单独的文件

    我正在开发一个相当大的 Vue 应用程序 现在我必须将所有路由写在一页上router index js它已经变得太长而无法喜欢甚至维持 这index js页面充满了诸如 之类的陈述 import This from components T
  • fill.contour 与 ggplot2 + stat_contour

    我是 ggplot2 的新手 我正在尝试复制我使用创建的图表filled contour与ggplot2 下面是我的代码 require ggplot2 require reshape2 data prep scale lt 10 xs l
  • JPA + Hibernate + 自动提交

    有谁知道为什么当我在 JPA 配置文件中关闭自动提交时收到此警告 使用此设置
  • 如何在 R 中求解具有时间相关参数的 ODE 系统?

    我正在尝试通过 deSolve 求解这个 ODE 系统 dX dt X a Y X b c 和 dY dt Ya X Y b 对于时间 0 200 a 0 30 b 0 2 但 c 对于时间 50 70 为 1 否则为 0 我一直使用的代码
  • 使用浏览器同步与 Node.js 应用程序

    我有一个现有的节点应用程序 我的 Node 目录结构设置如下 node modules src views index html server js test gulpfile js package json 我可以成功启动我的应用程序no
  • BeautifulSoup 给了我 unicode+html 符号,而不是直接的 unicode。这是错误还是误解?

    我正在使用 BeautifulSoup 来抓取网站 该网站的页面在我的浏览器中呈现良好 国际乐施会的报告题为 越位 http www coopamerica org programs responsibleshopper company c
  • C# mvc 3 使用选择列表并在视图中选择值

    我正在开发 MVC3 Web 应用程序 我想要在从应用程序管理系统编辑 blo 时显示类别列表 在我的视图模型中 我为类别的选择列表项列表定义了以下属性
  • WebAPI 中获取 Microsoft.AspNet.WebApi.Cors 版本问题

    我已经安装了Microsoft AspNet WebApi Cors封装使用Install Package Microsoft AspNet WebApi Cors在我的 WebApi 项目 net Framework 4 5 2 中 现在
  • Python将逗号分隔的数字解析为int [重复]

    这个问题在这里已经有答案了 我将如何解析字符串1 000 000 一百万 转换成Python中的整数值 gt gt gt a 1 000 000 gt gt gt int a replace 1000000 gt gt gt
  • IE历史推送状态

    我有一个网页 用户可以通过 AJAX 显示条款和条件 而无需重新加载页面 这本身是没有问题的 但是 我也在努力推动一种历史状态 除了 IE 之外 这在大多数浏览器中都可以正常工作 由于某种莫名其妙的原因 内容是通过 AJAX 加载的 而且还
  • 在android中生成核心转储

    我正在开发一个 android 的应用程序 使用一些共享的 我编写并使用 ndk r5b 编译的库 该应用程序有效 y 和对库的调用也有效 但我检测到一些错误 分段错误 我需要调试它 但是 我不知道如何调试 来自 android 的本机代码
  • 阻止 app_offline.htm 在每次构建时创建和删除?

    我有一个包含 Visual Studio 2008 SP1 NET Framework 3 5 SP1 中的 2 个项目的解决方案 一个 ASP 网站 类库 dll 项目 我有从网站到类库的引用 因为类库是我的数据层 但无论如何 只有在这种
  • 工具栏在 Android 4.X 设备上不可见

    我刚刚将 android support appcompat lib 更新到 22 1 1 工具栏在 Lollipop 设备上可见 但在 4 X 设备上不可见 我什至尝试扩展 AppCompatActivity 但仍然没有运气 如果需要其他
  • 如何在适配器中启动Activity?

    我有一个带有自定义适配器的 ListActivity 并且在每个视图内 它可能有一些按钮 我需要在其中实现OnClickListener 我需要实施OnClickListener在适配器中 但是 我不知道如何调用该函数startActivi
  • rebar无法从github获取依赖

    我无法得到any使用 rebar 来自 github 的依赖 rebar config file sub dirs rel deps dir deps erl opts debug info deps thrift erl 0 5 0 gi
  • 在包含的模型上使用 limit()

    The Code 假设我有两个模型 名为Product and Image 它们通过以下方式链接Product hasMany Image and Image belongsTo Product 现在 假设我想获取所有带有第一张图片的产品
  • ASP.NET MVC4 多语言数据注释

    在标准应用程序中 我有以下内容 Required DisplayName Email Address public string EmailAddress get set 这反过来会自动为该表单字段生成英文标签 现在 如果我需要我的应用程序