Freigeben über


Programmgesteuertes Festlegen der aktuellen Kultur in einer ASP.NET-Anwendung

In diesem Artikel wird beschrieben, wie Sie die aktuelle Kultur und die aktuelle Benutzeroberflächenkultur in einer ASP.NET Anwendung ändern.

Ursprüngliche Produktversion: ASP.NET
Ursprüngliche KB-Nummer: 306162

Zusammenfassung

In .NET Framework stellt die CultureInfo Klasse aus dem System.Globalization Namespace kulturspezifische Informationen bereit, z. B. die zugeordnete Sprache, das Land/die Region, den Kalender und kulturelle Konventionen. Die CurrentCulture Eigenschaft stellt die Kultur dar, die der aktuelle Thread verwendet. Die CurrentUICulture Eigenschaft stellt die aktuelle Kultur dar, die der Ressourcen-Manager zum Nachschlagen kulturspezifischer Ressourcen zur Laufzeit verwendet. Es gibt drei Möglichkeiten zum Festlegen der Kulturinformationen in einer ASP.NET Anwendung: Anwendungsebene, Seitenebene und Threadebene.

Anwendungsschicht

Angeben von Kulturinformationen auf Anwendungsebene in der Datei "web.config ":

  1. Starten Sie Editor (oder einen anderen Text-Editor).

  2. Fügen Sie den folgenden Code in Editor ein:

    <configuration>
        <system.web>
            <globalization
                culture="ja-JP"
                uiCulture="zh-HK"
            />
        </system.web>
    </configuration>
    
  3. Speichern Sie die Textdatei als "web.config" im Stammordner Ihres Webservers. Beispiel: C:\Inetpub\wwwroot\Web.config.

  4. Starten Sie eine andere Instanz von Editor. Fügen Sie den folgenden Code in Editor ein:

    <%@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. Speichern Sie diese Textdatei als Application.aspx im Stammordner Ihres Webservers.

  6. Starten Sie Internet Explorer, und öffnen Sie dann Application.aspx.

Seitenebene

Die kulturspezifischen Informationseinstellungen auf Seitenebene überschreiben die kulturspezifischen Informationseinstellungen auf Anwendungsebene. Angeben von Kulturinformationen auf Seitenebene mithilfe der <@Page> Direktive:

  1. Führen Sie die Schritte 1, 2 und 3 des Abschnitts "Anwendungsebene " aus, um die Datei "web.config " zu erstellen.

  2. Starten Sie eine andere Instanz von Editor. Fügen Sie den folgenden Code in Editor ein:

    <%@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. Speichern Sie diese Textdatei als Page.aspx im Stammordner Ihres Webservers.

  4. Starten Sie Internet Explorer, und öffnen Sie dann Page.aspx.

    Notiz

    Die Einstellung "Aktuelle Kultur" ist Französisch, obwohl Japanisch als aktuelle Kultur in der Datei "web.config " angegeben wird.

Threadebene

Die kulturspezifischen Informationseinstellungen auf Threadebene überschreiben die kulturspezifischen Informationseinstellungen auf Seitenebene. Geben Sie die kulturspezifischen Informationen auf Threadebene an, indem Sie die CurrentCulture Eigenschaft oder die CurrentUICulture Eigenschaft des aktuellen Threads festlegen:

  1. Führen Sie die Schritte 1, 2 und 3 des Abschnitts "Anwendungsebene " aus, um die Datei "web.config " zu erstellen.

  2. Starten Sie eine andere Instanz von Editor. Fügen Sie den folgenden Code in Editor ein:

    <% @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. Speichern Sie diese Textdatei als Thread.aspx im Stammordner Ihres Webservers.

  4. Starten Sie Internet Explorer, und öffnen Sie dann Thread.aspx.

    Notiz

    Die aktuelle Kultureinstellung ist Deutsch, obwohl Französisch auf Seitenebene angegeben wird und Japanisch in der Datei "web.config " angegeben wird.

References

Weitere Informationen finden Sie unter CultureInfo Class.