Salut,
avec le .NET Framework 4 tu as string.IsNullOrWhiteSpace (pareil que IsNullOrEmpty, sauf qu'en plus ça teste si la chaîne ne contient que des espaces blancs- donc plus besoin du 'Trim()' dans l'exemple).
Sinon pour la différence entre
et
la première des deux est un champ static readonly, donc réévalué à l'exécution, et la seconde est une constante. Pour les puristes, il vaut mieux utiliser string.Empty, par exemple dans l'optique (totalement improbable) où la constante 'chaîne vide' s'écrive différemment dans le futur. Mais sinon c"est pareil.
Un dernier point : ne jamais oublier que le type 'string' n'est pas un type valeur, donc il peut avoir comme valeur 'null'. Et une chaîne à laquelle on affecte 'null' n'est pas équivalente à string.Empty...
D'ailleurs, dans l'exemple
ça ne sert à rien de tester si la chaîne est null avec IsNullOrEmpty, puisque si 'text' était égal à 'null' ce code lèverait une ArgumentNullException, et s'il ne l'est pas de toute manière la fonction Trim ne renvoie jamais null.
Partager