Я писал код, где мне нужно было прочитать значение даты из элемента управления Calendar на моей странице (Ajax toolkit: calendar extender).
Код ниже:
DateTime newSelectedDate = myCalendarExtender.SelectedDate;
дает следующую ошибку:
Cannot implicitly convert type 'System.DateTime?' to 'System.DateTime'. An explicit conversion exists (are you missing a cast?)
Однако, вставив приведение, я могу заставить код работать:
DateTime newSelectedDate = (DateTime)myCalendarExtender.SelectedDate; // works fine!
Свойство "SelectedDate" для элемента управления календарем (Ajax toolkit) описывает тип данных как "System.DateTime?".... ясно, что? имеет какое-то отношение ко всему этому.
Что именно происходит, когда тип данных содержит этот символ (?)... Я предположил, что я могу применить свойство SelectedDate прямо к переменной типа DateTime без кастования.
Спасибо