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

DNN 本地化機制深度解析:打造全球化應用的完整指南

     編輯:關於ASP.NET

DNN 透過語言包實現本地化(漢化)。核心原理:所有頁面由用戶控件組成,逐個控件本地化,資源存放於對應 .resx 檔案。

關鍵術語

  • ResourceFileRoot: 資源檔基礎名稱(如 GlobalResources.resx)。
  • 本地化資源檔: GlobalResources.zh-CN.resx(中文)、GlobalResources.zh-CN.Portal-0.resx(站點級中文)。
  • resourcekey: 資源檔內查找特定內容的鍵值。
  • 地區資訊: 用戶註冊/站點設定的語言,決定呈現介面語言。優先序:用戶語言 → 站點語言 → 系統預設。

資源檔載入順序與 Fallback 機制

  1. 站點級資源檔(*.zh-CN.Portal-0.resx)
  2. 主機級資源檔(*.zh-CN.resx)
  3. 系統預設(*.resx)

可在 Locales.xml 設定 fallback 語言(如簡體中文 fallback 繁體中文),載入失敗時自動回退。

<?xml version="1.0" encoding="UTF-8"?>
<root>
  <language name="English" key="en-US" fallback="" />
  <language name="Deutsch" key="de-DE" fallback="en-US" />
  <language name="Chinese" key="zh-CN" fallback="zh-TW" />
</root>

語言包內容分類

  • 全域:GlobalResources.resx(選單)、SharedResources.resx(按鈕/提示)、TimeZones.xml
  • 模組:DesktopModules/*/App_GlobalResources
  • 控件:controls/*/App_GlobalResources
  • 管理:admin/*/App_GlobalResources

本地化管理介面

admin\Localization 提供:建立語言包、編輯語言包、生成語言包、編輯時區、驗證語言包完整性。

遺留問題:網站內容本地化

DNN 框架支援全球化,但使用者建立的內容(如標籤「Home」需中文顯示「首頁」)無內建解決方案。建議開發模組時納入語言選擇,同一模組實例支援多語言內容輸入,呈現時依語言切換。

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