异常描述中存在悖论:可空对象必须具有值(?!)
这就是问题:
我有一DateTimeExtended
堂课
{
DateTime? MyDataTime;
int? otherdata;
}
和一个构造函数
DateTimeExtended(DateTimeExtended myNewDT)
{
this.MyDateTime = myNewDT.MyDateTime.Value;
this.otherdata = myNewDT.otherdata;
}
运行此代码
DateTimeExtended res = new DateTimeExtended(oldDTE);
抛出一条InvalidOperationException
消息:
可为空的对象必须具有一个值。
myNewDT.MyDateTime.Value
-有效并且包含常规DateTime
对象。
此消息是什么意思,我在做什么错?
注意oldDTE
不是null
。我从中删除了Value
,myNewDT.MyDateTime
但由于生成了setter而引发了相同的异常。