2011-03-23 110 views
3

在我当前的项目中,在主页面上,我可以切换语言(FR | NL | UK)。ASP.NET MVC 3(Razor)应用程序中的多种语言

所有文本都在资源(.resx)文件中。我需要使用的语言代码(FR,NL,UK)在myMode中。

我该怎么做才能将所有的:@ HTML.Label(....)

感谢,

回答

9

当你改变你需要改变当前的UI文化的语言。您还需要跟踪用户语言首选项(路由,cookie,会话...)。这是nice guide,我会建议你阅读。

+0

我更喜欢不使用UI文化,我希望依赖于我的模型中的语言变量从资源文件 – 2011-03-23 08:34:38

+0

@ Kris-I获取值,在这种情况下,您可以仅为当前请求设置当前UI文化基于你的模型的价值。您可以在应该呈现视图的控制器操作中执行此操作。这样,只有当前用户和当前操作才会获得本地化版本。你不坚持它。 – 2011-03-23 08:42:33

+0

而语法@ HTML.Label ..? – 2011-03-23 09:09:52

0

我同意以前的答案,您必须更改当前的UI文化。在下拉式更改时,您可以将语言存储在Cookie中。然后使用这个cookie,你可以设置当前的用户界面文化。取决于文化,应用程序将根据语言选择从资源文件中选取文本。