Partager via


Définir la culture actuelle par programmation dans une application ASP.NET

Cet article explique comment modifier la culture actuelle et la culture actuelle de l’interface utilisateur dans une application ASP.NET.

Version du produit d’origine : ASP.NET
Numéro de base de connaissances d’origine : 306162

Résumé

Dans le .NET Framework, la CultureInfo classe de l’espace de noms fournit des informations spécifiques à la System.Globalization culture, telles que la langue, le pays/la région associés, le calendrier et les conventions culturelles. La CurrentCulture propriété représente la culture utilisée par le thread actuel. La CurrentUICulture propriété représente la culture actuelle utilisée par Resource Manager pour rechercher des ressources spécifiques à la culture au moment de l’exécution. Il existe trois façons de définir les informations de culture dans une application ASP.NET : niveau application, niveau page et niveau thread.

Niveau d’application

Spécifiez les informations de culture au niveau de l’application dans le fichier web.config :

  1. Démarrez le Bloc-notes (ou tout autre éditeur de texte).

  2. Collez le code suivant dans le Bloc-notes :

    <configuration>
        <system.web>
            <globalization
                culture="ja-JP"
                uiCulture="zh-HK"
            />
        </system.web>
    </configuration>
    
  3. Enregistrez le fichier texte en tant que web.config dans le dossier racine de votre serveur Web. Par exemple, C:\Inetpub\wwwroot\Web.config.

  4. Démarrez une autre instance du Bloc-notes. Collez le code suivant dans le Bloc-notes :

    <%@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. Enregistrez ce fichier texte en tant que Application.aspx dans le dossier racine de votre serveur Web.

  6. Démarrez Internet Explorer, puis ouvrez Application.aspx.

Niveau page

Les paramètres d’informations propres à la culture au niveau de la page remplacent les paramètres d’informations propres à la culture au niveau de l’application. Spécifiez les informations de culture au niveau de la page à l’aide de la <@Page> directive :

  1. Suivez les étapes 1, 2 et 3 de la section au niveau de l’application pour créer le fichier web.config.

  2. Démarrez une autre instance du Bloc-notes. Collez le code suivant dans le Bloc-notes :

    <%@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. Enregistrez ce fichier texte en tant que Page.aspx dans le dossier racine de votre serveur Web.

  4. Démarrez Internet Explorer, puis ouvrez Page.aspx.

    Note

    Le paramètre Culture actuelle est français, bien que le japonais soit spécifié comme culture actuelle dans le fichier web.config .

Niveau du thread

Les paramètres d’informations propres à la culture au niveau du thread remplacent les paramètres d’informations propres à la culture au niveau de la page. Spécifiez les informations propres à la culture au niveau du thread en définissant la CurrentCulture propriété ou la CurrentUICulture propriété du thread actuel :

  1. Suivez les étapes 1, 2 et 3 de la section au niveau de l’application pour créer le fichier web.config.

  2. Démarrez une autre instance du Bloc-notes. Collez le code suivant dans le Bloc-notes :

    <% @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. Enregistrez ce fichier texte en tant que Thread.aspx dans le dossier racine de votre serveur web.

  4. Démarrez Internet Explorer, puis ouvrez Thread.aspx.

    Note

    Le paramètre de culture actuel est allemand, même si le français est spécifié au niveau de la page et le japonais est spécifié dans le fichier web.config .

References

Pour plus d’informations, consultez CultureInfo, classe.