2009-01-05 109 views
7

我正在全球化我在asp.net mvc中开发的应用程序。ASP.NET MVC视图全球化

我目前正在使用资源文件来存储我向用户呈现的消息(即,当我将某些内容保存到数据库,并且用户显示消息“任何被正确保存的消息”时,该文本存储在一个资源文件,以便我可以很容易地本地化另一种语言的消息。

我的问题是如何做到这一点在整个视图?现在,我有一些意见,主要是HTML与一些少量的表示逻辑

本地化视图的最佳做法是什么?我在这里看看:

在该职位的做法似乎是一个有趣的路要走,但我不知道这将是多么容易维护每种语言独立意见。

注意:我一般都没有在asp.net中做过很多全球化或本地化的工作,所以可能会有一些非我所错过的非mvc世界的最佳实践。

回答

3

我们遇到了与我们的新MVC应用and our solution is here相同的问题。保持单独的观点可能是艰苦的工作,但用不同的语言保持相同的观点似乎同样困难,我们认为保持整体观点会给我们更多的权力,这是亚洲国家发布新闻的必要条件。

希望它可以帮助你。

0

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

更多信息here

0

你可以尝试设置您的路线是这样的:

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

,然后有本地化作为参数传递给你的行为,就像ID是一个参数。