Establecer la referencia cultural actual mediante programación en una aplicación ASP.NET

En este artículo se describe cómo cambiar la referencia cultural actual y la referencia cultural actual de la interfaz de usuario en una aplicación ASP.NET.

              Versión original del producto: ASP.NET
Número de KB original: 306162

Resumen

En .NET Framework, la CultureInfo clase del espacio de nombres proporciona información específica de la System.Globalization referencia cultural, como el idioma asociado, el país o región, el calendario y las convenciones culturales. La CurrentCulture propiedad representa la referencia cultural que usa el subproceso actual. La CurrentUICulture propiedad representa la referencia cultural actual que Resource Manager usa para buscar recursos específicos de la referencia cultural en tiempo de ejecución. Hay tres maneras de establecer la información de referencia cultural en una aplicación ASP.NET: nivel de aplicación, nivel de página y nivel de subproceso.

Nivel de aplicación

Especifique la información de referencia cultural de nivel de aplicación en el archivo web.config :

  1. Inicie el Bloc de notas (o cualquier otro editor de texto).

  2. Pegue el código siguiente en el Bloc de notas:

    <configuration>
        <system.web>
            <globalization
                culture="ja-JP"
                uiCulture="zh-HK"
            />
        </system.web>
    </configuration>
    
  3. Guarde el archivo de texto como web.config en la carpeta raíz del servidor web. Por ejemplo, C:\Inetpub\wwwroot\Web.config.

  4. Inicie otra instancia del Bloc de notas. Pegue el código siguiente en el Bloc de notas:

    <%@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. Guarde este archivo de texto como Application.aspx en la carpeta raíz del servidor web.

  6. Inicie Internet Explorer y abra Application.aspx.

Nivel de página

La configuración de información específica de la referencia cultural de nivel de página invalida la configuración de información específica de la referencia cultural del nivel de aplicación. Especifique la información de referencia cultural de nivel de página mediante la <@Page> directiva :

  1. Siga los pasos 1, 2 y 3 de la sección Nivel de aplicación para crear el archivo web.config .

  2. Inicie otra instancia del Bloc de notas. Pegue el código siguiente en el Bloc de notas:

    <%@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. Guarde este archivo de texto como Page.aspx en la carpeta raíz del servidor web.

  4. Inicie Internet Explorer y abra Page.aspx.

    Nota:

    La configuración de referencia cultural actual es francés, aunque el japonés se especifica como la referencia cultural actual en el archivo web.config .

Nivel de subproceso

La configuración de información específica de la referencia cultural del nivel de subproceso invalida la configuración de información específica de la referencia cultural del nivel de página. Especifique la información específica de la referencia cultural del nivel de subproceso estableciendo la CurrentCulture propiedad o la CurrentUICulture propiedad del subproceso actual:

  1. Siga los pasos 1, 2 y 3 de la sección Nivel de aplicación para crear el archivo web.config .

  2. Inicie otra instancia del Bloc de notas. Pegue el código siguiente en el Bloc de notas:

    <% @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. Guarde este archivo de texto como Thread.aspx en la carpeta raíz del servidor web.

  4. Inicie Internet Explorer y abra Thread.aspx.

    Nota:

    La configuración de referencia cultural actual es alemana, aunque el francés se especifica en el nivel de página y el japonés se especifica en el archivo web.config .

Referencias

Para obtener más información, consulte Clase CultureInfo.