asp.net mvc 多语言
来自百度经验:https://jingyan.baidu.com/article/20b68a88f0fbbd796dec6267.html
方法/步骤
-
创建asp.net mvc的项目 MVCResources
-
添加App_GlobalResources,步骤如下:
右键MVCResources项目 -> 添加 -> 添加ASP.NET文件夹 -> App_GlobalResources(此时看到的不是文件夹的样子,等添加资源文件后,就会变成文件夹的样子)
-
添加不同语系的资源文件
右键App_GlobalResources -> 添加 -> 新建项 -> 资源文件
1)名称默认为 Resource1.resx
2)再添加一个英文的资源文件:Resource1.en-US.resx
3)如果需要,再添加其他语系的资源文件,但是同一类资源文件的名称前面需要一样。比如此处的Resource1必须都一样
-
在资源文件中添加具体资源内容
1)同一个资源在各个不同语系的资源文件中【名称】栏位值必须一样
2)各个资源文件中的资源【名称】个数需要一样
3)最终界面根据语言显示的是【值】栏位,所以,如果某个语系没有这个编码的【名称】,将会报错
-
添加HomeController与Index页面
-
获取资源文件中【名称】=TestString1的值
1)在Controller中获取资源文件值,传递到View中使用
2)也可以直接在View中获取资源文件的值
-
为站点指定语系,则不管浏览器设置为什么语系,都将按照此处设置的语系展示资源文件的内容
在Web.config 的 system.web 节点下面加上指定UI要显示的语系,如显示为英文:
<globalization uiCulture="en-US"/>
-
设置语系与浏览器语系相同
在Web.config 的 system.web 节点下面加上如下内容:
<globalization culture="auto" uiCulture="auto"/>
后续如果要增加不同语系资源文件,不需要再次编译发布项目,拷贝资源文件到App_GlobalResources文件夹下即可
-

















浙公网安备 33010602011771号