asp.net-mvc-3 – 全球化在ASP.Net MVC 3

前端之家收集整理的这篇文章主要介绍了asp.net-mvc-3 – 全球化在ASP.Net MVC 3前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图在我的MVC 3应用程序中实现全球化/本地化。我不想为每种语言使用不同的视图。请建议我如何进行。任何支持链接/ URL将是很大的帮助。

解决方法

你本地化与任何其他应用程序相同的方式,像这样:

>创建文件夹,调用它。资源
>右键单击文件夹并添加类…选择资源文件。称它为你喜欢的任何东西。 Strings.resx
>在文件属性下,将自定义工具更改为PublicResXFileCodeGenerator
>使用Translation键和值对填充资源文件(这将是默认翻译)
>使用以下格式创建其他文化名称的资源:{name} .de.resx例如Strings.de.resx
>(这是为Razor)破解在Views文件夹中打开web.config并将其添加到/configuration/system.web.webPages.razor/pages/namespaces:< add namespace =“Resources”/> (假设resources是您创建资源的文件夹的名称,并且您尚未更改资源文件本身的默认命名空间)。
此步骤意味着您不需要在每次要引用翻译时完全限定视图中的资源类。
>使用翻译代替视图中的文本,如下面的代码

@Strings.MyString

字符串将根据CultureInfo.CurrentCulture在视图中自动翻译,但不会自动为您设置

您将需要更改CurrentCulture(可能在Application_BeginRequest中)。如何做到这一点取决于你,它可以是一个路由值设置它,或者你可以读取用户的浏览器语言

您可以在HttpContext.Current.Request.UserLanguages中找到用户首选语言的列表(按顺序)。

猜你在找的asp.Net相关文章