以程式設計方式在 ASP.NET 應用程式中設定目前的文化特性
本文說明如何在 ASP.NET 應用程式中變更目前的文化特性和目前的UI文化特性。
原始產品版本: ASP.NET
原始 KB 編號: 306162
摘要
在 .NET Framework 中, CultureInfo
命名空間中的 System.Globalization
類別會提供特定文化特性的資訊,例如相關聯的語言、國家/地區、行事曆和文化慣例。 屬性 CurrentCulture
代表目前線程所使用的文化特性。 屬性 CurrentUICulture
代表 Resource Manager 在運行時間用來查閱特定文化特性資源的目前文化特性。 在 ASP.NET 應用程式中設定文化特性資訊的方式有三種:應用層級、頁面層級和線程層級。
應用程式層級
在 web.config 檔案中指定應用層級文化特性資訊:
啟動 [記事本] (或任何其他文本編輯器)。
在記事本中貼上下列程式代碼:
<configuration> <system.web> <globalization culture="ja-JP" uiCulture="zh-HK" /> </system.web> </configuration>
將文本文件儲存為 Web 伺服器根資料夾中的 web.config 。 例如:
C:\Inetpub\wwwroot\Web.config
。啟動另一個記事本實例。 在記事本中貼上下列程式代碼:
<%@Page Language="C#" %> <% @Import Namespace="System.Globalization" %> <html> <head> </head> <script runat=server> public void Page_Load() { Response.Write ("Current Culture is " + CultureInfo.CurrentCulture.EnglishName); } </script> <body> </body> </html>
將此文字檔儲存為 網頁伺服器的根資料夾中Application.aspx 。
啟動 Internet Explorer,然後開啟 Application.aspx。
頁面層級
頁面層級文化特性特定資訊設定會覆寫應用層級文化特性特定資訊設定。 使用 <@Page>
指示字指定頁面層級文化特性資訊:
請遵循應用層級區段的步驟 1、2 和 3 來建立 web.config 檔案。
啟動另一個記事本實例。 在記事本中貼上下列程式代碼:
<%@Page Culture="fr-FR" Language="C#" %> <% @Import Namespace="System.Globalization" %> <html> <head> </head> <script runat=server> public void Page_Load() { Response.Write ("Current Culture is " + CultureInfo.CurrentCulture.EnglishName); } </script> <body> </body> </html>
將此文字檔儲存為 網頁伺服器的根資料夾中Page.aspx 。
啟動 Internet Explorer,然後開啟 Page.aspx。
注意
目前的文化特性設定是法文,雖然日文是在 web.config 檔案中指定為目前的文化特性。
線程層級
線程層級文化特性特定資訊設定會覆寫頁面層級文化特性特定資訊設定。 藉由設定目前線程的屬性或 CurrentUICulture
屬性,CurrentCulture
以指定線程層級文化特性特定資訊:
請遵循應用層級區段的步驟 1、2 和 3 來建立 web.config 檔案。
啟動另一個記事本實例。 在記事本中貼上下列程式代碼:
<% @Page Culture="fr-FR" Language="C#" %> <% @Import Namespace="System.Globalization" %> <% @Import Namespace="System.Threading" %> <html> <head> </head> <script runat=server> public void Page_Load() { // Display the Current Culture Response.Write("Current Culture is " + Thread.CurrentThread.CurrentCulture.EnglishName + "<br>"); // Modify the Current Culture Thread.CurrentThread.CurrentCulture = new CultureInfo("de-DE"); Response.Write("Changing Culture to " + Thread.CurrentThread.CurrentCulture.EnglishName + "<br>"); } </script> <body> </body> </html>
將此文字檔儲存為 網頁伺服器的根資料夾中Thread.aspx 。
啟動 Internet Explorer,然後開啟 Thread.aspx。
注意
目前的文化特性設定是德文,不過法文是在頁面層級指定,而日文是在 web.config 檔案中指定。
參考資料
如需詳細資訊,請參閱 CultureInfo 類別。