.Net 多语言 与资源文件

Posted dong5151

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.Net 多语言 与资源文件相关的知识,希望对你有一定的参考价值。

目前很多网站都支持多语言,特别是中英文。而.Net网站中的多语言就要用到资源文件。资源文件分为全局资源文件(App_GlobalResource)以及本地资源文件(App_LocalResource)。

创建资源文件

对于一个项目,我们一般都会创建全局资源文件以及本地资源文件。我们可以首先新建两个文件夹:App_GlobalResource,App_LocalResource。

1. 创建本地资源文件(App_LocalResource)

本地资源文件是针对于某个页面资源信息。所以,原则上我们应该对每个文件都创建一个资源文件。命名格式为:页面名+.resx(后缀)。如home.aspx对应本地资源文件:home.aspx.resx 。

1.1 VS自动创建资源文件

1) 打开页面选择设计模式(Design)。

2) 【工具】 ——  【生成本地资源文件】,就可以创建当前页面的本地资源文件。你可以在App_LocalResource文件夹中查看。  


1.2 手动创建资源文件

1) 选中App_LocalResource文件夹 —— 【添加新项】 —— 选择【资源文件】,命名方式参考以上内容,即可创建一个相应的本地资源文件。

2. 创建全局资源文件(App_GlobalResource)

2.1 手动创建全局资源文件

1)选中App_LocalResource文件夹 —— 【添加新项】 —— 选择【资源文件】,命名方式参考以上内容,即可创建一个相应的本地资源文件。

3. 中英文资源文件命名方式

中英文资源文件命名方式为:en-US(英文),zh-CN(中文)。

资源文件使用

1. 前端界面调用资源文件

 服务器控件


资源文件


如上图所示:以上有三种访问资源文件的方式。

1)meta:resourcekey="Country" 方式

这种是由VS自动生成的资源文件,对于每个服务器控件,它会生成两个值Country.Text以及Country.ToolTip。VS会自动绑定控件资源文件。

2)<%$Resources:Province %> 方式

这种智能绑定到服务器控件中的Text属性。比如:Label,Literal。

3)<%=this.GetLocalResourceObject("City") %> 方式

这种方式不能绑定到服务器控件中,我尝试过,编译会出错。所以你只能绑定到html控件中。

2. 后端代码调用资源文件

1)调用全局资源文件,调用本地资源文件










以上是关于.Net 多语言 与资源文件的主要内容,如果未能解决你的问题,请参考以下文章

Asp.Net MVC 多语言(html+js共用一套资源文件)

C# 创建多语言设置

react-intl 实现 React 国际化多语言

求教用C#实现多语言的程序

android——实现多语言支持

多语言设置,获取对应的资源文件配置