Eseguire operazioni sulle stringhe indipendenti dalle impostazioni cultura nelle matrici

Per impostazione predefinita, gli overload dei metodi Array.Sort e Array.BinarySearch consentono di eseguire ordinamenti dipendenti dalle impostazioni cultura tramite la proprietà Thread.CurrentCulture. I risultati dipendenti dalle impostazioni cultura restituiti da questi metodi possono variare in base a tali impostazioni a causa dei diversi tipi di ordinamento. Per eliminare il comportamento dipendente dalle impostazioni cultura, usare uno degli overload del metodo che accetta il parametro comparer. Il parametro comparer specifica l'implementazione di IComparer da usare quando si confrontano gli elementi nella matrice. Per il parametro specificare una classe di operatori di confronto invariabili personalizzati che usi CultureInfo.InvariantCulture. Un esempio di classe di operatori di confronto invariabili viene fornito nell'argomento secondario "Utilizzo della classe SortedList" dell'argomento Eseguire operazioni sulle stringhe indipendenti dalle impostazioni cultura nelle raccolte.

Nota

Il passaggio di CultureInfo.InvariantCulture a un metodo di confronto comporta l'esecuzione di un confronto indipendente dalle impostazioni cultura. Non viene tuttavia eseguito un confronto non linguistico, ad esempio per percorsi di file, chiavi del Registro di sistema e variabili di ambiente e non sono supportate le decisioni relative alla sicurezza basate sul risultato del confronto. Per un confronto non linguistico o per il supporto delle decisioni relative alla sicurezza basate sul risultato, l'applicazione deve utilizzare un metodo di confronto che accetti un valore StringComparison. L'applicazione deve quindi passare Ordinal.

Vedi anche