首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> .NET 實例教學

ASP.NET AJAX 全球化與本地化開發完整指南

     編輯:.NET 實例教學

核心概念

  • 全球化:面向多種文化設計應用程式,提供多文化支援基礎。
  • 本地化:面向特定文化/地區定制應用程式,在全球化基礎上進一步適配。
  • 兩者密不可分:全球化提供支援,本地化實施定制。

ASP.NET 伺服器端全球化

  1. 建立 App_GlobalResources 資料夾,新增基礎資源檔 GlobalResource.resx。
  2. 依語言建立對應檔案,如 GlobalResource.en-US.resx(編碼遵循 RFC 1766)。
  3. 在兩檔中建立相同鍵(如 TodayIs),分別設定值「今天是」與 "Today is"。
  4. 頁面控件綁定:<asp:Label Text="<%$ Resources:GlobalResource, TodayIs %>" />,或程式碼 Resources.GlobalResource.TodayIs。
  5. 手動切換文化:重寫 InitializeCulture(),設定 UICulture(影響資源檔選擇)與 Culture(影響日期/數字格式),最後呼叫 base.InitializeCulture()。也可在 `` 或頁面指令中設定。

ASP.NET 伺服器端本地化

  1. 建立 App_LocalResources,新增與頁面同名資源檔(如 Default.aspx.resx、Default.aspx.en-US.resx)。
  2. 資源鍵格式為 控件ID.屬性名(如 lblCurrentTime.Text)。
  3. 頁面標記:<asp:Label runat="server" meta:resourcekey="lblCurrentTime" />,運行時自動依文化載入對應值。

ASP.NET AJAX 客戶端全球化

僅涉及日期/數字/字串格式轉換,取決於 Culture,與 UICulture 無關。

  1. ScriptManager 設定 EnableScriptGlobalization="true"。
  2. JavaScript 中使用 localeFormat 方法格式化輸出,如 new Date().localeFormat("yyyy/MM/dd")。

ASP.NET AJAX 客戶端本地化

基於 JavaScript 檔案命名慣例:腳本名.文化編碼.js(如 DemoResource.js、DemoResource.en-US.js)。

  1. 腳本結構:命名空間 + 類 + 鍵值對物件。
    Type.registerNamespace("Demo");
    Demo.Resx = {
        "TodayIs": "今天是"
    };
  2. ScriptManager 啟用並指定腳本路徑與支援文化:
    <asp:ScriptManager ID="sm" runat="server" EnableScriptLocalization="true">
        <Scripts>
            <asp:ScriptReference Path="~/Scripts/DemoResource.js" ResourceUICultures="en-US" />
        </Scripts>
    </asp:ScriptManager>
  3. 頁面直接調用:document.write(Demo.Resx.TodayIs + new Date().localeFormat("yyyy/MM/dd"));,瀏覽器語言自動匹配對應 .js 檔。

總結

伺服器端依賴 .resx 資源檔與 Culture/UICulture;客戶端全球化靠 localeFormat,本地化靠多語系 .js 檔命名約定。兩者結合可構建完整的多語言 AJAX 應用。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved