HOW TO:建立 ASP.NET Web 網頁的資源檔 (Visual Studio)
更新:2007 年 11 月
「資源檔」是可以包含字串和其他資源 (例如影像檔路徑) 的 XML 檔案。資源檔通常用以儲存必須轉譯為其他語言的使用者介面字串。這是因為您可以為網頁,針對每種您想要轉譯語言,建立個別的資源檔。
全域資源檔可用於網站中的任何網頁或元件。本機資源檔則和單一網頁、使用者控制項或主版頁面 (Master Page) 相關聯,並且只包含該網頁的資源。如需詳細資訊,請參閱 ASP.NET Web 網頁資源概觀。
在 Visual Web Developer 中,可以使用 Managed 資源編輯器建立全域或本機資源檔。針對本機資源檔,您也可以在設計工具中,直接從網頁產生文化特性中性基底資源檔。
手動建立資源
若要以手動方式建立資源檔
透過執行下列其中一項,確定網站具有要儲存資源檔的資料夾:
如果正在建立全域資源檔,則必須具有名稱為 App_GlobalResources 的資料夾。若要建立此資料夾,請在 [方案總管] 中以滑鼠右鍵按一下網站的名稱,按一下 [加入資料夾] 再按一下 [App_GlobalResources 資料夾]。在一個應用程式中只可以有其中一個這類資料夾,而這個資料夾必須位於應用程式根目錄中。
如果正在建立本機資源檔,則必須具有名稱為 App_LocalResources 的資料夾。若要建立資料夾,請在 [方案總管] 中以滑鼠右鍵按一下網站的名稱,按一下 [加入資料夾] 再按一下 [App_LocalResources 資料夾]。在一個應用程式中可有許多這類資料夾,這些資料夾可以在應用程式的任意層級中。
若要建立資源檔,以滑鼠右鍵按一下 App_GlobalResources 或 App_LocalResources 資料夾,然後按一下 [加入新項目]。
注意事項:
全域資源檔必須在 App_GlobalResources 資料夾中。如果嘗試在這個資料夾外建立 .resx 檔案,Visual Web Developer 會提示您在該資料夾中建立這個檔案。
在 [加入新項目] 對話方塊中的 [Visual Studio 安裝的範本] 下,按一下 [組件資源檔]。
在 [名稱] 方塊中,輸入資源檔的名稱,然後按一下 [加入]。
Visual Web Developer 會在 Managed 資源編輯器中開啟檔案。編輯器中會顯示可讓您輸入名稱 (機碼)、值和選擇性註解的方格。
輸入應用程式中需要之每個資源的機碼名稱和值,然後儲存檔案。
注意事項:
請勿嘗試直接在資源檔案嵌入圖形,因為控制項無法將資源字串解讀為經過資料流處理的影像檔。資源檔會將圖形的 URL 儲存為字串來表示圖形。
若要建立其他語言的資源檔,請在 [方案總管] 或 Windows 檔案總管中複製檔案,然後以下列其中一種模式重新命名該檔案:
全域資源檔:
name.language.resx
name.language-culture.resx
本機資源檔:
pageOrControlName.extension.language.resx
pageOrControlName.extension.language-culture.resx
例如,如果建立名稱為 WebResources.resx 如果要轉譯為埃及阿拉伯文,而建立名稱為 WebResources.ar-eg.resx 的全域資源檔。若要建立要轉譯為西班牙文的相關資源檔,但不指定文化特性 (Culture),則將複製的檔案命名為 WebResources.es.resx。請注意在本機資源檔中,資源檔名稱是網頁或控制項名稱,包括副檔名,以及語言和文化特性資訊。
開啟複製的檔案並轉譯每個值,不變更名稱 (機碼)。
對想要使用的每個其他語言重複步驟 6 和 7。
從網頁建立資源
Visual Web Developer Express 版中無法使用下列功能。
若要從 ASP.NET Web 網頁產生本機資源檔
開啟您要建立資源檔的網頁。
切換至 [設計] 檢視。
在 [工具] 功能表中,按一下 [產生本機資源]。
Visual Web Developer 會建立 App_LocalResources 資料夾 (如果該資料夾不存在)。Visual Web Developer 接著會對目前的網頁建立文化特性中性基底資源檔,包括需要當地語系化之每個控制項屬性或頁面屬性的機碼/名稱組。最後,Visual Web Developer 會將 meta 屬性加入至每個 ASP.NET Web 伺服器控制項,以設定控制項為使用隱含當地語系化。如需隱含和明確當地語系化的詳細資訊,請參閱 ASP.NET Web 網頁資源概觀和 HOW TO:使用資源來設定 Web 伺服器控制項的屬性值 (Visual Studio)。
輸入應用程式中需要之每個資源的值,然後儲存檔案。
注意事項:
請勿嘗試直接在資源檔案嵌入圖形,因為控制項無法將資源字串解讀為經過資料流處理的影像檔。資源檔會將圖形的 URL 儲存為字串來表示圖形。
如果沒有顯示最新的資源變更,則切換到 [原始碼] 檢視,然後再切換回 [設計] 檢視,藉此重新整理 [設計] 檢視。
遵循前一個程序的步驟 6 和步驟 7,即可建立其他語言的資源檔。
若要在 Visual Web Developer 中產生全域資源檔
在 [方案總管] 中,以滑鼠右鍵按一下網站名稱,然後按一下 [加入新項目],再按一下 [資源檔]。
Visual Web Developer 會詢問您是否要將檔案置放在 App_GlobalResources 資料夾中,並詢問是否要建立此資料夾。
按一下 [是]。
輸入應用程式中需要之每個資源的值,然後儲存檔案。
注意事項:
請勿嘗試直接在資源檔案嵌入圖形,因為控制項無法將資源字串解讀為經過資料流處理的影像檔。資源檔會將圖形的 URL 儲存為字串來表示圖形。
如果沒有顯示最新的資源變更,則切換到 [原始碼] 檢視,然後再切換回 [設計] 檢視,藉此重新整理 [設計] 檢視。
若要建立其他語言的資源檔,請在 [方案總管] 或 Windows 檔案總管中複製檔案,然後以下列其中一種模式重新命名該檔案:
name.language.resx
name.language-culture.resx
注意事項:
在命名資源檔時,請勿在名稱中包含 .aspx,因這樣可能導致命名衝突。例如,[資源] 資料夾不能包含兩個名稱類似於 resTestPage.resx 和 resTestPage.aspx.resx 的檔案。在這種情況下,編譯時的檔名解析會建立命名衝突,因而導致編譯時期錯誤。
請參閱
工作
HOW TO:使用資源來設定 Web 伺服器控制項的屬性值 (Visual Studio)