| 使用ASP.Net2.0國際化你的網(wǎng)站祥解這個功能其實大家早就知道了,現(xiàn)在由于有一個項目要用到這個技術,所以又去全面一些的查找了一下。自己紀錄一下,方便于以后查找使用吧。創(chuàng)建可有多種語言版本的 Web 應用程序在 ASP.NET 2.0 版以前是一項復雜的任務。如果您使用資源文件 (RESX) 及 ResourceManager,則需要手動分離出可本地化的元素,并執(zhí)行自己的資源加載過程,這需要花費您很多的精力并需要編寫大量的代碼。ASP.NET 2.0 版大大簡化了此過程,并且增加了很多功能,如: 
         首先要在頁面級別(<%@ Page UICulture="auto" Culture="auto" %>)或整個Portal級別(在Web.config中<globalization uiCulture="auto" culture="auto"/>)定義特定  
 以編程的方法檢索資源值: 可以使用聲明性語法將 ASP.NET 服務器控件屬性值設置為資源值,也可以以編程方式檢索資源值。如果在設計時資源值未知或者需要根據(jù)運行時條件設置資源值,可能會這樣做。 可以從本地資源文件和全局資源文件中獲取資源值,這些文件使用的方法返回一個可強制轉換為適當類型的對象。由于 ASP.NET 使用強類型編譯全局資源,因此也可以使用強類型成員獲取全局資源。 調用 GetLocalResourceObject 或 GetGlobalResourceObject 方法以分別從全局資源文件或本地資源文件中讀取特定的資源。在 HttpContext 和 TemplateControl 類中提供了這些重載方法。 GetGlobalResourceObject 方法采用資源類名和資源 ID。該類名基于的是 .resx 文件名。例如,文件 WebResources.resx 和所有相關聯(lián)的本地化文件都由類名 WebResources 引用。 GetLocalResourceObject 方法采用表示 ResourceKey 屬性的資源名。 下面的代碼示例演示如何從本地資源文件和全局資源文件獲取資源值。這些方法返回一個對象;因此,必須將該資源強制轉換為適當?shù)念愋汀?/p> 存儲在 App_LocalResources 特殊文件夾中的默認本地資源文件根據(jù) ASP.NET 頁命名。例如,如果在 Default.aspx 頁中使用了下面的代碼,則必須將該資源文件命名為 Default.aspx.resx。在此示例中,向此文件添加了一個名為 Button1.Text 的字符串資源,并且該資源帶有 "Found Resources" 值。 此外,在此示例中,存儲在 App_GlobalResources 特殊文件夾中的默認全局資源文件命名為 WebResourcesGlobal.resx。向此文件添加了一個名為 LogoUrl 的字符串資源,而且該資源帶有http://go.microsoft.com/fwlink/?LinkId=49295 值或其他圖像的 URL  <%@ Page Language="C#" %>   <script runat="server">  protected void Button1_Click(object sender, EventArgs e)     {  Button1.Text =  GetLocalResourceObject("Button1.Text").ToString();  Image1.ImageUrl =  (String)GetGlobalResourceObject(  "WebResourcesGlobal", "LogoUrl");  Image1.Visible = true;  }  </script>   <html  >  <head id="Head1" runat="server">  <title>Untitled Page</title>  </head>  <body>  <form id="form1" runat="server">  <div>  <asp:Button ID="Button1" runat="server"  OnClick="Button1_Click"  Text="Get Resources" />  <asp:Image ID="Image1" runat="server"  Visible="false" />  </div>  </form>  </body>  </html> 
 | 
|  | 
來自: donixli1314 > 《ASP .NET》