Share via


以程式設計方式在 ASP.NET 應用程式中設定目前的文化特性

本文說明如何在 ASP.NET 應用程式中變更目前的文化特性和目前的UI文化特性。

原始產品版本: ASP.NET
原始 KB 編號: 306162

摘要

在 .NET Framework 中,命名空間中的 CultureInfoSystem.Globalization 類別會提供特定文化特性的資訊,例如相關聯的語言、國家/地區、行事曆和文化慣例。 屬性 CurrentCulture 代表目前線程所使用的文化特性。 屬性CurrentUICulture代表 Resource Manager 在運行時間用來查閱特定文化特性資源的目前文化特性。 在 ASP.NET 應用程式中設定文化特性資訊的方式有三種:應用層級、頁面層級和線程層級。

應用層級

在web.config檔案中指定應用層級文化特 資訊:

  1. 啟動記事本 (或任何其他文本編輯器) 。

  2. 在記事本中貼上下列程式代碼:

    <configuration>
        <system.web>
            <globalization
                culture="ja-JP"
                uiCulture="zh-HK"
            />
        </system.web>
    </configuration>
    
  3. 將文字檔儲存為 網頁 伺服器根資料夾中的web.config。 例如,C:\Inetpub\wwwroot\Web.config

  4. 啟動另一個記事本實例。 在記事本中貼上下列程式代碼:

    <%@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>
    
  5. 將此文字檔儲存為網頁伺服器根資料夾中的 Application.aspx

  6. 啟動 Internet Explorer,然後開 啟 Application.aspx

頁面層級

頁面層級文化特性特定資訊設定會覆寫應用層級文化特性特定的信息設定。 使用指示字指定頁面層級文化特性 <@Page> 資訊:

  1. 請遵循應用 層級 一節的步驟 1、2 和 3 來建立 web.config 檔案。

  2. 啟動另一個記事本實例。 在記事本中貼上下列程式代碼:

    <%@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>
    
  3. 將此文字檔儲存為網頁伺服器根資料夾中的 Page.aspx

  4. 啟動 Internet Explorer,然後開 啟 [Page.aspx]。

    注意事項

    [目前文化特性] 設定為法文,雖然日文指定為web.config檔案中的目前文化特

線程層級

線程層級文化特性特定資訊設定會覆寫頁面層級文化特性特定資訊設定。 藉由設定目前線程的屬性或 屬性,CurrentCultureCurrentUICulture指定線程層級文化特性特定資訊:

  1. 請遵循應用 層級 一節的步驟 1、2 和 3 來建立 web.config 檔案。

  2. 啟動另一個記事本實例。 在記事本中貼上下列程式代碼:

    <% @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>
    
  3. 將此文字檔儲存為網頁伺服器根資料夾中的 Thread.aspx

  4. 啟動 Internet Explorer,然後開 啟 [Thread.aspx]。

    注意事項

    目前的文化特性設定是德文,雖然法文是在頁面層級指定,而日文則是在 web.config 檔案中指定。

參考資料

如需詳細資訊,請參閱 CultureInfo 類別