加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 使用多语言支持的“正确”方式

发布时间:2020-12-16 07:18:22 所属栏目:asp.Net 来源:网络整理
导读:我刚刚开始使用ASP.NET,我试图带来一些我认为健康的编码标准.在这些标准中,有多语言支持和资源使用,可以轻松处理未来的变化. 回到我以前编写桌面应用程序时,每个文本都必须翻译,因此通常的做法是为每个我希望提供给客户的语言提供语言文件.在这些文件中,我会
我刚刚开始使用ASP.NET,我试图带来一些我认为健康的编码标准.在这些标准中,有多语言支持和资源使用,可以轻松处理未来的变化.

回到我以前编写桌面应用程序时,每个文本都必须翻译,因此通常的做法是为每个我希望提供给客户的语言提供语言文件.在这些文件中,我会映射每个文本,从按钮标签到错误消息.在ASP.NET中,在Visual Studio的帮助下,我可以使用IDE生成这样的资源文件(来自Tools – > Generate Local Resource),但是我必须用标签填充我的网页 – 至少这就是我从文章和教程中学到的东西.然而,这种方法看起来有点奇怪,我很想猜它也闻不到那么好.现在问题:

>我应该将网站中的每个文本都作为标签保存并在资源文件中管理其内容吗?看起来/感觉奇怪,特别是在考虑带有几个段落的文本时.
>每当我添加/删除某些东西时,例如:一个按钮,一个aspx文件,我也必须将它添加到资源文件中,因为再次生成资源文件只会覆盖我以前对它的所有更改.对我来说,这根本不是一个可重复使用的代码.

也许我从教程中弄错了,因为它似乎不是一个标准化的问题 – 特别是如果它需要在必须进行某些更改时重新编译整个应用程序.

解决方法

多年来,ASP.NET Web窗体本地化的最佳实践并没有真正发生太大变化.如果您没有太多动态内容,那么您可以放弃隐式本地化并将Web表单控件(表单元素和是,甚至标签)绑定到资源文件.如果您想要更多地控制在具有多个标题的控件中呈现本地化文本的位置或您自己创建的内容,则显式本地化非常有用.对于如何执行其中任何一项操作,您无需从MS的指导步骤看起来很远.

Walkthrough: Using Resources for Localization with ASP.NET

例如,如果您的本地化要求更具动态性,您希望轻松配置新语言,集中资源,或者需要在新维度(如每个客户端)上设置新的字符串标题,那么您需要更具创造性. .NET允许你扩展
资源提供程序,您可以实现数据库后端,以便轻松管理本地化资源.

Extending the ASP.NET 2.0 Resource-Provider Model,Building a Database Resource Provider

Extending Resource-Provider for storing resources in the database *最近的实施

或者你可以自己动手!

我也挖了一个重复的SO帖子.它已经有几年了,但从经验来看,我相信在引用的代码项目页面上找到的建议仍然是正确的(对于Web窗体):Globalization and localization demystified in ASP.NET 2.0

我希望有所帮助!如果您对本地化有任何更具体的问题,请将其添加到您的问题或评论中.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读