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 dell'operatore di confronto invariante personalizzato è disponibile nell'argomento "Uso 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 esegue 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