溫故知新ASP.NET 2.0(C#)(5) - Localization

作者: webabcd  來源: 博客園  發布時間: 2008-09-16 17:32  閱讀: 4411 次  推薦: 0   原文鏈接   [收藏]  

系列文章導航:

溫故知新ASP.NET 2.0(C#)(1) - MasterPage(母版頁)

溫故知新ASP.NET 2.0(C#)(1) - MasterPage(母版頁)

溫故知新ASP.NET 2.0(C#)(2) - Themes(主題)

溫故知新ASP.NET 2.0(C#)(3) - SiteMap(站點地圖)

溫故知新ASP.NET 2.0(C#)(4) - 緩存&SqlCacheDependency

溫故知新ASP.NET 2.0(C#)(5) - Localization

溫故知新ASP.NET 2.0(C#)(8) - DataSourceControl

溫故知新ASP.NET 2.0(C#)(6) - Membership&RoleManager

溫故知新ASP.NET 2.0(C#)(7) - Profile

溫故知新ASP.NET 2.0(C#)(8) - DataSourceControl

 

介紹
  聲明性資源表達式可使您的應用程序使用多種語言,而不必手動編寫代碼來檢索資源并在頁中進行替換。您只需使用 ASP.NET 2.0 中新提供的表達式語法即可對資源替換進行定義。ASP.NET 2.0 支持標準的 resx 文件格式自動進行運行時資源檢索。

關鍵
  1、Culture - 決定各種數據類型是如何組織,如數字與日期;UICulture - 決定了采用哪一種本地化資源,也就是使用哪種語言。在頁的@Page指令中或者配置文件的<system.web><globalization>元素中設置(另外該元素內還可以設置屬性requestEncoding,responseEncoding,fileEncoding)。Culture="en-us"和Culture="auto:en-us"的區別在于,后者會先自動匹配,無法自動匹配則用en-us;

  2、HTTP 允許瀏覽器使用“接受語言”(Accept-Language) HTTP 請求標頭字段將一個首選語言列表發送到 Web 服務器。在IE中選擇工具 - Internet 選項 - 語言;

  3、web.sitemap應用本地化的時候設置<siteMap>的屬性enableLocalization="true"。訪問全局資源:$Resources: 全局資源名, 資源內的key, 默認值;或者resourceKey="web.sitemap.resx文件中的key";

  4、編程方式處理用GetGlobalResourceObject() 和 GetLocalResourceObject();

  5、編程設置Culture 和 UICulture請重寫InitializeCulture(),對 Thread.CurrentThread.CurrentCulture 和 Thread.CurrentThread.CurrentUICulture進行設置;

  6、訪問全局資源:$ Resources:全局資源名,資源內的key;顯式訪問本地資源:$ Resources:key.屬性;隱式訪問本地資源:meta:resourcekey="key"。

示例
本地化測試
Localization/Test.aspx

 

Code

 

Localization/Test.aspx.cs

 

Code

 

從資源文件讀圖片
Localization/Image.aspx.cs

 

Code

 

Web.sitemap本地化摘要

 

Code

 

0
0
 
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()