Bonjour,

J'ai une chaîne de caractère.
Elle est forcément numérique, ou vide.


Je souhaite donc créer un int? contenant la valeur numérique de la chaîne, ou null si la chaîne est vide.


Malheureusement, la méthode int?.Parse() n'existe pas.

Du coup je me retrouve avec deux bémols dans mon code (enfin… 3) :
Code csharp : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Ticket.AssignedToId = (TxtAssignedToId.Text.Length > 0) ? (int?)int.Parse(TxtAssignedToId.Text) : null;
1/ C'est illisible pour rien
2/ Je dois faire un test de longueur sur la chaîne qui me semble inutile car devrait être géré par le Parse()3/ Je suis obligé de passer par un int que je dois convertir explicitement en int? à cause du null de mon else et je trouve ça laid

Avez-vous une idée pour faire un truc plus propre ?

Il n'y a pas non plus de int?.TryParse(), évidement.