2017-02-04 1 views
2

Je suis assez nouveau chez C#. ReSharper m'a prévenu que l'utilisation de "string.IndexOf" est spécifique à la culture. Qu'est-ce qui est spécifique à la culture?C# - Qu'est-ce que Culture-Specific?

+1

Lisez ceci: https://msdn.microsoft.com/fr-fr/library/dd465121(v=vs.110).aspx –

Répondre

2

culture fait référence à la langue par exemple l'anglais américain (en-us) et l'anglais britannique (en-fr) (Il est évident que la même langue, mais les différentes cultures dans la mesure .NET est concerné). La raison pour laquelle cela peut être important lors de l'utilisation de "string.IndexOf" est que certains caractères (pensez aux caractères avec des accents et des trémas) sont traités différemment selon les cultures. Il n'y a pas assez de valeurs Unicode pour représenter chaque caractère dans chaque langue. Dans certains contextes de culture, certaines combinaisons de caractères (comme un 'a' suivi d'un tréma) sont combinées en un seul caractère mais dans d'autres contextes de culture. L'utilisation de "string.IndexOf" sur une chaîne contenant un tréma peut donc donner des résultats différents selon la culture de l'ensemble. Mais dans la plupart des cas, surtout si vous êtes en train d'apprendre, le comportement par défaut de la classe de chaînes sera parfait.

1

Resharaper est une extension de suivre une norme de codage si une méthode d'accepter la culture comme overload.then il est très bon de fournir ces fonctionnalités dans votre code

comparisonType 
paramètre

spécifie pour rechercher le paramètre de valeur utiliser la culture actuelle ou invariante, en utilisant une recherche sensible à la casse ou à la casse, et en utilisant des règles de comparaison de mots ou de nombres ordinaux.

More Info