obiekt zerowalny musi mieć wartość
W opisie wyjątku występuje paradoks: Obiekt dopuszczalny musi mieć wartość (?!)
To jest problem:
mamDateTimeExtended
klasa, która ma
{
DateTime? MyDataTime;
int? otherdata;
}
i konstruktor
DateTimeExtended(DateTimeExtended myNewDT)
{
this.MyDateTime = myNewDT.MyDateTime.Value;
this.otherdata = myNewDT.otherdata;
}
uruchomienie tego kodu
DateTimeExtended res = new DateTimeExtended(oldDTE);
rzucaInvalidOperationException
z wiadomością:
Obiekt dopuszczalny musi mieć wartość.
myNewDT.MyDateTime.Value
- jest ważny i zawiera regularneDateTime
obiekt.
Jakie jest znaczenie tego komunikatu i co robię źle?
Zauważ, żeoldDTE
nie jestnull
. UsunąłemValue
zmyNewDT.MyDateTime
ale ten sam wyjątek jest generowany z powodu wygenerowanego setera.