我正在考虑全球化我在 ASP.NET MVC 中开发的应用程序。

我目前正在使用资源文件来存储向用户呈现的消息(即,当我将某些内容保存到数据库时,并向用户显示消息“正确保存的内容”),该文本存储在资源文件中,因此我可以轻松地将消息本地化为另一种语言。

我的问题是如何从整体上做到这一点?现在,我有一些视图,大部分是 HTML,带有少量的表示逻辑。

本地化视图的最佳实践是什么?我在这里看了一下:

那篇文章中的方法似乎是一种有趣的方法,但我想知道为每种语言维护单独的视图有多么容易。

笔记:我一般没有在 ASP.NET 中做过太多全球化或本地化工作,因此我可能缺少一些来自非 MVC 世界的最佳实践。

有帮助吗?

解决方案

我们在新的 MVC 应用程序中遇到了同样的问题 我们的解决方案就在这里. 。维持不同的观点可能是一项艰苦的工作,但用不同的语言维持相同的观点似乎同样困难,我们决定维持整体观点将给我们更多的权力,这将需要为亚洲国家发布。

希望它对您有帮助。

其他提示

对每个视图文件夹使用 App_LocalResources,并为该文件夹和每种区域性中的每个视图放置资源。

更多信息 这里.

您可以尝试将路线设置为:

    RouteTable.Routes.MapRoute(
        "Globalization",
        "{localization}/{controller}/{action}/{id}",
        new { localization = "en-us", controller = "Globalization", action = "Index", id = "" }
        );

然后将本地化作为操作的参数,就像 id 是参数一样。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top