使用ASP.Net2.0国际化你的网站祥解这个功能其实大家早就知道了,现在由于有一个项目要用到这个技术,所以又去全面一些的查找了一下。自己纪录一下,方便于以后查找使用吧。创建可有多种语言版本的 Web 应用程序在 ASP.NET 2.0 版以前是一项复杂的任务。如果您使用资源文件 (RESX) 及 ResourceManager,则需要手动分离出可本地化的元素,并执行自己的资源加载过程,这需要花费您很多的精力并需要编写大量的代码。ASP.NET 2.0 版大大简化了此过程,并且增加了很多功能,如:
首先要在页面级别(<%@ Page UICulture="auto" Culture="auto" %>)或整个Portal级别(在Web.config中<globalization uiCulture="auto" culture="auto"/>)定义特定
以编程的方法检索资源值: 可以使用声明性语法将 ASP.NET 服务器控件属性值设置为资源值,也可以以编程方式检索资源值。如果在设计时资源值未知或者需要根据运行时条件设置资源值,可能会这样做。 可以从本地资源文件和全局资源文件中获取资源值,这些文件使用的方法返回一个可强制转换为适当类型的对象。由于 ASP.NET 使用强类型编译全局资源,因此也可以使用强类型成员获取全局资源。 调用 GetLocalResourceObject 或 GetGlobalResourceObject 方法以分别从全局资源文件或本地资源文件中读取特定的资源。在 HttpContext 和 TemplateControl 类中提供了这些重载方法。 GetGlobalResourceObject 方法采用资源类名和资源 ID。该类名基于的是 .resx 文件名。例如,文件 WebResources.resx 和所有相关联的本地化文件都由类名 WebResources 引用。 GetLocalResourceObject 方法采用表示 ResourceKey 属性的资源名。 下面的代码示例演示如何从本地资源文件和全局资源文件获取资源值。这些方法返回一个对象;因此,必须将该资源强制转换为适当的类型。 存储在 App_LocalResources 特殊文件夹中的默认本地资源文件根据 ASP.NET 页命名。例如,如果在 Default.aspx 页中使用了下面的代码,则必须将该资源文件命名为 Default.aspx.resx。在此示例中,向此文件添加了一个名为 Button1.Text 的字符串资源,并且该资源带有 "Found Resources" 值。 此外,在此示例中,存储在 App_GlobalResources 特殊文件夹中的默认全局资源文件命名为 WebResourcesGlobal.resx。向此文件添加了一个名为 LogoUrl 的字符串资源,而且该资源带有http://go.microsoft.com/fwlink/?LinkId=49295 值或其他图像的 URL ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
|
来自: donixli1314 > 《ASP .NET》