2010-01-22 7 views

Répondre

0

La conversion en varbinary est supposée forcer une comparaison sensible à la casse. Si c'est la seule préoccupation, alors oui, les deux déclarations sont équivalentes.

La comparaison de chaînes par défaut sera sensible à la casse. Toutefois, la comparaison de chaînes par défaut utilise les informations de culture actuelles et peut traiter certaines chaînes différemment selon la culture. Si cela est un problème pour votre application, alors vous pouvez utiliser la comparaison ordinale qui produirait exactement les mêmes résultats que la distribution varbinary.

if (String.Compare(var1, var2, StringComparison.Ordinal) > 0) 
{ 

} 
+0

Vous voulez dire sensible à la casse, pas insensible? Varbinary n'est-il pas de type blob pour qu'il ne puisse rien supposer du contenu? N'est-ce pas fondamentalement en comparant les octets? –

+0

@Lasse V. Karlsen, vous avez raison, j'ai eu quelques incohérences dans ma réponse. Corrigé maintenant. –