Программная установка текущего языка и региональных параметров в приложении ASP.NET

В этой статье описывается изменение текущего языка и региональных параметров и региональных параметров пользовательского интерфейса в приложении ASP.NET.

Исходная версия продукта: ASP.NET
Исходный номер базы знаний: 306162

Сводка

В платформа .NET Framework класс из пространства имен предоставляет сведения о System.Globalization языке и региональных параметрах, CultureInfo например о связанном языке, стране или регионе, календаре и культурных соглашениях. Свойство 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. Запустите интернет-Обозреватель, а затем откройте 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. Запустите интернет-Обозреватель, а затем откройте Page.aspx.

    Примечание.

    Параметр Current Culture (Текущий язык и региональные параметры) — французский, хотя японский язык указан в качестве текущего языка и региональных параметров в файлеweb.config .

Уровень потока

Параметры сведений, относящихся к языку и региональным параметрам на уровне потока, переопределяют параметры сведений, относящихся к языку и региональным параметрам на уровне страницы. Укажите сведения об уровне потока и региональных параметров, задав CurrentCulture свойство или CurrentUICulture свойство текущего потока:

  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. Запустите интернет-Обозреватель, а затем откройте Thread.aspx.

    Примечание.

    Текущий параметр языка и региональных параметров — немецкий, хотя французский указан на уровне страницы, а японский — в файлеweb.config .

Ссылки

Подробнее см. в разделе Класс CultureInfo.