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中找到用户首选语言的列表(按顺序)。

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....