82 votes

Le code C # ne sera pas compilé. Pas de conversion implicite entre null et int

Double Possible:
Les types nullables et l'opérateur ternaire. Pourquoi ne pas en faire ce travail?

Pourquoi ne pas ce travail? Semble que le code est valide. Quelqu'un peut-il aider?

  string cert = ddCovCert.SelectedValue;
  int? x = (string.IsNullOrEmpty(cert)) ? null: int.Parse(cert);
  Display(x);

Comment dois-je code ce? La méthode prend un Nullable. Si la liste déroulante est une chaîne de caractères sélectionnée j'ai besoin d'analyser que dans un int sinon je veux passer la valeur null à la méthode.

Merci, ~ck à San Diego

259voto

Mehrdad Afshari Points 204872
int? x = string.IsNullOrEmpty(cert) ? (int?)null : int.Parse(cert);

9voto

Scott Vercuski Points 2825

J'ai rencontré la même chose ... Habituellement, je jette simplement le caractère nul sur (int?)

 int? x = (string.IsNullOrEmpty(cert)) ? (int?)null: int.Parse(cert);
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X