Durchführen kulturunabhängiger Zeichenfolgenoperationen in ArraysPerforming Culture-Insensitive String Operations in Arrays

Überladungen der Array.Sort- und Thread.CurrentCulture-Methode führen kulturabhängige Sortierungen standardmäßig mit der Array.BinarySearch-Eigenschaft aus.Overloads of the Array.Sort and Array.BinarySearch methods perform culture-sensitive sorts by default using the Thread.CurrentCulture property. Die kulturabhängigen Ergebnisse, die von diesen Methoden zurückgegeben werden, können aufgrund von Unterschieden bei Sortierreihenfolgen je nach Kultur variieren.Culture-sensitive results returned by these methods can vary by culture due to differences in sort orders. Um kulturabhängiges Verhalten zu vermeiden, verwenden Sie eine der Überladungen dieser Methode, die einen comparer-Parameter akzeptiert.To eliminate culture-sensitive behavior, use one of the overloads of this method that accepts a comparer parameter. Der comparer-Parameter gibt die IComparer-Implementierung an, die beim Vergleich von Elementen im Array zu verwenden ist.The comparer parameter specifies the IComparer implementation to use when comparing elements in the array. Geben Sie für den Parameter eine benutzerdefinierte invariante Comparer-Klasse an, in der CultureInfo.InvariantCulture verwendet wird.For the parameter, specify a custom invariant comparer class that uses CultureInfo.InvariantCulture. Ein Beispiel einer benutzerdefinierten invarianten Comparer-Klasse finden Sie im Unterthema „Verwenden der SortedList-Klasse“ des Themas Durchführen kulturunabhängiger Zeichenfolgenvorgänge in Auflistungen.An example of a custom invariant comparer class is provided in the "Using the SortedList Class" subtopic of the Performing Culture-Insensitive String Operations in Collections topic.

Hinweis

Wenn Sie CultureInfo.InvariantCulture einer Vergleichsmethode übergeben, wird ein kulturunabhängiger Vergleich ausgeführt.Passing CultureInfo.InvariantCulture to a comparison method does perform a culture-insensitive comparison. Dies bewirkt jedoch keinen nicht linguistischen Vergleich, z. B. auf Dateipfade, Registrierungsschlüssel und Umgebungsvariablen.However, it does not cause a non-linguistic comparison, for example, for file paths, registry keys, and environment variables. Und dadurch werden auch keine Sicherheitsentscheidungen anhand des Vergleichsergebnisses unterstützt.Neither does it support security decisions based on the comparison result. Für einen nicht linguistischen Vergleich oder Unterstützung für ergebnisbasierte Sicherheitsentscheidungen sollte die Anwendung eine Vergleichsmethode verwenden, die einen StringComparison-Wert akzeptiert.For a non-linguistic comparison or support for result-based security decisions, the application should use a comparison method that accepts a StringComparison value. Die Anwendung sollte dann Ordinal übergeben.The application should then pass Ordinal.

Siehe auchSee also