Wykonywanie operacji ciągów bez uwzględniania kultury w tablicach
Przeciążenia metod i Array.BinarySearch domyślnie wykonują sortowanie Array.Sort wrażliwe na kulturę Thread.CurrentCulture przy użyciu właściwości . Wyniki wrażliwe na kulturę zwracane przez te metody mogą się różnić w zależności od kultury ze względu na różnice w kolejności sortowania. Aby wyeliminować zachowanie wrażliwe na kulturę, użyj jednego z przeciążeń tej metody, które akceptuje comparer
parametr. Parametr comparer
określa implementację IComparer do użycia podczas porównywania elementów w tablicy. Dla parametru określ niestandardową niezmienną klasę porównującą, która używa CultureInfo.InvariantCultureklasy . Przykład niestandardowej niezmiennej klasy porównującej znajduje się w podtopie "Using the SortedList Class" ( Używanie klasy SortedList) w temacie Wykonywanie operacji ciągów bez uwzględniania kultury w kolekcjach .
Uwaga
Przekazywanie elementu CultureInfo.InvariantCulture do metody porównania wykonuje porównanie niewrażliwe na kulturę. Nie powoduje to jednak porównania nielingwistycznego, na przykład dla ścieżek plików, kluczy rejestru i zmiennych środowiskowych. Żadna z nich nie obsługuje decyzji dotyczących zabezpieczeń na podstawie wyniku porównania. W przypadku porównania nielingwistycznego lub obsługi decyzji dotyczących zabezpieczeń opartych na wynikach StringComparison aplikacja powinna użyć metody porównania, która akceptuje wartość. Następnie aplikacja powinna przekazać wartość Ordinal.