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