Convertir un type en nullable [Résolu]

zigxag 142 Messages postés jeudi 10 février 2005Date d'inscription 2 octobre 2008 Dernière intervention - 17 juil. 2007 à 11:35 - Dernière réponse : cs_Bidou 5507 Messages postés dimanche 4 août 2002Date d'inscription 20 juin 2013 Dernière intervention
- 17 juil. 2007 à 13:11
Bonjour !

existe-t-il une facon propre, prévue par le framework, pour convertir un type en nullable ?
Par exemple, je voudrais faire ceci :

int? myNullableValue;
if (selectedValue == "0")
   myNullableValue = new Nullable();
else
   myNullableValue = Convert.Toint32(selectedValue); 

...mais je trouve pas ca très joli...
Quelqu'un à une idée ?
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
cs_Bidou 5507 Messages postés dimanche 4 août 2002Date d'inscription 20 juin 2013 Dernière intervention - 17 juil. 2007 à 13:11
3
Merci
Pourquoi pas:

int
? x =

null
;


if
(y z) x

Convert
.ToInt32(

"w"
);













<hr />
-Blog-

Merci cs_Bidou 3

codes-sources a aidé 82 internautes ce mois-ci

Commenter la réponse de cs_Bidou
bernie666 427 Messages postés mercredi 1 octobre 2003Date d'inscription 29 janvier 2008 Dernière intervention - 17 juil. 2007 à 11:55
0
Merci
Alors pour commencer un int ne peux pas etre null ;)

par contre sur une date : tu peux faire Nullable<Datetime> maDate;

et faire des test  :

if (da.HasValue){

Console.Write(da.Value.ToString());

}

-------------------------------------------http://quoideneufaujourdhui.spaces.live.com
Commenter la réponse de bernie666
cs_Bidou 5507 Messages postés dimanche 4 août 2002Date d'inscription 20 juin 2013 Dernière intervention - 17 juil. 2007 à 12:04
0
Merci
Salut,
Le cast est implicite de x à nullable<x> (et explicite de nullable<x> à x)

int? x =
null;

int y = 3;
x = y;

<hr />
-Blog-
Commenter la réponse de cs_Bidou
zigxag 142 Messages postés jeudi 10 février 2005Date d'inscription 2 octobre 2008 Dernière intervention - 17 juil. 2007 à 12:47
0
Merci
merci pour vos réponses !
mais par contre ca plante à la compilation quand jécris ceci :


int? myNullableInt = (DDLDivision.SelectedValue == "0") ? null : Convert.ToInt32(DDLDivision.SelectedValue)


car le compilateur dit qu'il n'existe pas de convertion implicite entre un nullable et un int...
Il faut donc que j'écrive ceci pourque mon code compile :

int? myNullableInt = (DDLDivision.SelectedValue == "0") ? newNullable() : Convert.ToInt32(DDLDivision.SelectedValue)

hum...je ne sais pas pourquoi mais quelque chose me dit qu'il y a une facon plus jolie d'utiliser les types Nullable...
Commenter la réponse de zigxag

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.