ASP.NET 2.0本地化技術入門之使用工具自動生成
ASP.NET 2.0本地化技術入門:如何使用工具自動生成本地化資源(LocalResources)
首先當然是建立一個WEB工程啦,如圖所示:
雙擊Default.aspx,切換到[設計]視圖,從工具箱里拖一個Button進來。點擊菜單中的[工具]->[生成本地資源],如圖所示:
這時發現在解決方案方案視圖里自動增加了一份本地資源,如下圖所示:
切換到屬性視圖,可以看到Text和ToolTip都被加上了一個紅色符號,提示“屬性是用表達形式隱式綁定的”,如下圖所示:(注意:只有在視圖狀態下選中控件才能看到這兩個屬性喲)
ASP.NET 2.0本地化包括增加對多語言的支持。我們現在右鍵Default.aspx.resx,點擊復制,再選中App_LocalResources目錄,點擊粘貼,將“副本 Default.aspx.resx”重命名為Default.aspx.en-us.resx,如圖所示:
分別編輯Default.aspx.resx和Default.aspx.en-s.resx 的內容,如下圖示:
Default.aspx.resx
Default.aspx.en-s.resx
打開Default.aspx,在 Page 標簽里添加Culture="auto" UICulture="auto",如下所示:
- < %
- @ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" meta:resourcekey="PageResource1" UICulture="auto" Culture="auto"
- %>
只有這樣,后面才能獲取瀏覽器的首選語言設置。如果要加到 Web.config 中,如下所示:
- < system.web>
- < globalization uiCulture="auto" culture="auto" />
- < /system.web>
運行網站,效果如下圖所示:
點擊IE菜單的[工具]->[Internet 選項],在彈出的對話框中點[常規]選項卡的[語言]按鈕,彈出[語言首選項]對話框,如下圖所示:
點擊[添加]按鈕,選擇英語(美國),并上移到第一位,如下圖所示:
一路[確定]點下來,刷新頁面,可以看到Button的標題變成“Hello World”啦,如下圖所示:
綜上所述,ASP.NET 2.0本地化中使用工具自動生成本地化資源,并隱式的綁定到控件上,來實現頁面的本地化是非常簡單的,但存在以下幾項問題:
1)必須為每個頁生成多份資源文件;
2)只有控件屬性中被標識為Localizable(true)才可能被工具掃描到;
3)由于是對頁面包含的控件進行掃描,所以最好是在頁面布局基本確定后再使用該工具,并且在編輯完 資源文件后不要再使用該工具,如果不幸你這樣做了。。。會發現默認的資源文件被清空了
【編輯推薦】