Existe um paradoxo na descrição da exceção: o objeto nulo deve ter um valor (?!)
Este é o problema:
Eu tenho uma DateTimeExtendedaula que tem
{
DateTime? MyDataTime;
int? otherdata;
}
e um construtor
DateTimeExtended(DateTimeExtended myNewDT)
{
this.MyDateTime = myNewDT.MyDateTime.Value;
this.otherdata = myNewDT.otherdata;
}
executando este código
DateTimeExtended res = new DateTimeExtended(oldDTE);
lança um InvalidOperationExceptioncom a mensagem:
Objecto nulo deve ter um valor.
myNewDT.MyDateTime.Value- é válido e contém um DateTimeobjeto regular .
Qual é o significado desta mensagem e o que estou fazendo de errado?
Note que oldDTEnão é null. Eu removi o Valuede myNewDT.MyDateTimemas a mesma exceção é lançada devido a um setter gerado.