Freigeben über


Durchführen kulturunabhängiger Zeichenfolgenoperationen

Zeichenfolgenoperationen, die kulturspezifisch sind, sind vorteilhaft, wenn Sie Anwendungen erstellen, die für die Anzeige von Ergebnissen für Benutzer für jede Kultur ausgelegt sind. In der Standardeinstellung rufen kulturabhängige Methoden die zu verwendende Kultur aus der CurrentCulture-Eigenschaft für den aktuellen Thread ab.

Manchmal stellen kulturabhängige Zeichenfolgenoperationen jedoch nicht das gewünschte Verhalten dar. Die Verwendung von kulturabhängigen Operationen in Szenarien, in denen die Ergebnisse unabhängig von der Kultur sein sollen, kann bei Kulturen mit speziellen Groß- und Kleinschreibungs- und Sortierungsregeln zum Fehlschlagen des Anwendungscodes führen. Ein Beispiel finden Sie unter " Zeichenfolgenvergleiche", die den Abschnitt "Aktuelle Kultur" in bewährten Methoden für die Verwendung von Zeichenfolgen verwenden.

Ob Stringoperationen kultursensitiv oder kulturunsensitiv sein sollen, hängt davon ab, wie die Anwendung die Ergebnisse verwendet. Zeichenfolgenvorgänge, die Ergebnisse für den Benutzer anzeigen, sollten in der Regel kultursensitiv sein. Wenn eine Anwendung beispielsweise eine sortierte Liste lokalisierter Zeichenfolgen in einem Listenfeld anzeigt, sollte die Anwendung eine kulturabhängige Sortierung durchführen.

Ergebnisse von intern verwendeten Zeichenfolgenoperationen, sollten i. d. R. kulturunabhängig sein. Wenn die Anwendung mit Dateinamen, Persistenzformaten oder symbolischen Informationen arbeitet, die dem Benutzer nicht angezeigt werden, sollten die Ergebnisse von Zeichenfolgenvorgängen nicht je nach Kultur variieren. Wenn eine Anwendung beispielsweise eine Zeichenfolge vergleicht, um festzustellen, ob es sich um ein erkanntes XML-Tag handelt, sollte der Vergleich nicht kulturempfindlich sein. Wenn darüber hinaus eine Sicherheitsentscheidung auf dem Ergebnis eines Zeichenfolgenvergleichs oder einer Änderung der Groß-/Kleinschreibung beruht, sollte die Operation kulturunabhängig sein, um sicherzustellen, dass das Ergebnis nicht durch den Wert von CurrentCulture beeinflusst wird.

Die meisten .NET-Methoden, die standardmäßig kultursensitive Zeichenfolgenvorgänge ausführen, bieten auch eine Überladung, mit der Sie kulturunempfindliche Ergebnisse garantieren können. Diese Überladungen akzeptieren ein Argument CultureInfo und geben Ihnen die Möglichkeit, kulturelle Variationen in Groß-/Kleinschreibungszuordnungen und Sortierregeln zu beseitigen. Geben Sie für kulturinsensitive Zeichenfolgenoperationen die Kultur als CultureInfo.InvariantCulture an.

In diesem Abschnitt

Die Artikel in diesem Abschnitt zeigen, wie Sie kulturunsensible Zeichenfolgenvorgänge durchführen können, indem Sie .NET-Methoden verwenden, die standardmäßig kultursensitiv sind.

Durchführen kulturinsensitiver Zeichenfolgenvergleiche
Beschreibt, wie die Methoden String.Compare und String.CompareTo verwendet werden, um kulturunabhängige Zeichenfolgenvergleiche durchzuführen.

Durchführen kulturunabhängiger Schreibungsänderungen
Beschreibt die Verwendung der String.ToUpper-, String.ToLower-, Char.ToUpper- und Char.ToLower-Methode für kulturunabhängige Schreibungsänderungen.

Durchführen kulturunabhängiger Zeichenfolgenoperationen in Sammlungen
Beschreibt die Verwendung der CaseInsensitiveComparer Klasse, CaseInsensitiveHashCodeProvider, SortedList, ArrayList.Sort und CollectionsUtil.CreateCaseInsensitiveHashtable, um kulturunabhängige Vorgänge in Auflistungen durchzuführen.

Durchführen kulturunabhängiger Zeichenfolgenoperationen in Arrays
Beschreibt, wie die Array.Sort- und Array.BinarySearch-Methoden zur Ausführung von kulturunsensiblen Vorgängen in Arrays verwendet werden.

Siehe auch