在陣列中執行不考慮文化特性的字串作業

Array.SortArray.BinarySearch 方法的多載預設會使用 Thread.CurrentCulture 屬性執行區分文化特性的排序。 這些方法所傳回的區分文化特性的結果可能會因為文化特性排序順序上的差異而有所不同。 若要消除區分文化特性的行為,請使用此方法中可接受 comparer 參數的其中一個多載。 comparer 參數會指定要在比較陣列中元素時使用的 IComparer 實作。 為參數指定一個使用 CultureInfo.InvariantCulture 的自訂非變異值比較子類別。 如需自訂非變異值比較子類別的範例,請參閱在集合中執行不考慮文化特性的字串作業主題中的<使用 SortedList 類別>次主題。

注意

對比較方法傳遞 CultureInfo.InvariantCulture,的確會執行不考慮文化特性的比較。 不過,它不會讓某些項目進行非語言比較,例如檔案路徑、登錄機碼和環境變數。 它也不支援根據比較結果所做出的安全性決策。 若要進行非語言比較或需要支援根據結果的安全性決策,應用程式應該使用可接受 StringComparison 值的比較方法。 接著,應用程式應該會傳遞 Ordinal

另請參閱