J'écrivais à un code où j'avais besoin de lire la valeur de date d'un contrôle de calendrier dans ma page (Ajax toolkit: extension de calendrier).System.DateTime? vs System.DateTime
Le code ci-dessous:
DateTime newSelectedDate = myCalendarExtender.SelectedDate;
donne l'erreur suivante:
Cannot implicitly convert type 'System.DateTime?' to 'System.DateTime'. An explicit conversion exists (are you missing a cast?)
Cependant, en insérant un cast je peux obtenir le code pour:
DateTime newSelectedDate = (DateTime)myCalendarExtender.SelectedDate; // works fine!
Le 'Selec La propriété tedDate 'du contrôle de calendrier (Ajax toolkit) décrit le type de données en tant que' System.DateTime? ' ... clairement le '?' a quelque chose à voir avec tout cela. Que se passe-t-il exactement lorsqu'un type de données contient ce symbole (?) ... J'ai supposé pouvoir appliquer la propriété 'SelectedDate' directement dans une variable de type 'DateTime' sans conversion.
Merci
@Marek - vous préférez l'url brut? Mes excuses pour l'édition alors. –
@ Jeff: Il a ajouté le bloc de code dans son édition aussi, donc il est fort probable n'a pas été un changement intentionnel ... juste qu'il avait déjà l'écran d'édition ouverte avant votre édition. – Powerlord
@Jeff: Désolé, c'était involontaire. Je ne savais pas que vous avez édité l'url, mon édition a écrasé le vôtre. – Marek