Comment puis-je utiliser un pour cent pour le format de format sans se multiplier par 100?

StackOverflow https://stackoverflow.com/questions/5983868

  •  12-11-2019
  •  | 
  •  

Question

Je voudrais formater un entier en pourcentage sans qu'il se multiplie par 100 comme indiqué ici. Parce que ma source est un INT, la diviser d'abord par 100 n'est pas une option valide. Est-ce possible?

[DisplayFormat(DataFormatString = "{0:#%}")]
Était-ce utile?

La solution

Vous pouvez échapper au % personnage:

[DisplayFormat(DataFormatString = @"{0:#\%}")]

Notez qu'il existe deux façons d'utiliser \ En tant que caractère d'échappement: si vous préfixez une chaîne littérale avec le symbole motorisé (@), alors \ Les caractères sont inclus dans la chaîne en tant que Célibataire \ fonctionnera comme un caractère d'évasion.

Sans le @ Symbole textuel, \S sont interprétés comme des cordes d'évasion par le compilateur et en tant que tels doivent être échappés eux-mêmes, comme \\.

Choisissez l'un ou l'autre, mais pas les deux:

@"{0:#\%}"  -> right
"{0:#\\%}"  -> right
@"{0:#\\%}" -> wrong

Autres conseils

Mettez le% en dehors du {0: ..}

[DisplayFormat(DataFormatString = "{0:0.00}%")]

À partir de votre page liée:

Caractère d'échappement

Faire interpréter le caractère suivant comme un spécificateur littéral plutôt que comme un spécificateur de format personnalisé.

[DisplayFormat(DataFormatString = "{0:#\\%}")]
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top