异常描述存在悖论:
可空对象必须具有值(?!)
问题如下:
我有一个名为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
。我已从 myNewDT.MyDateTime
中删除了 Value
,但由于生成的 setter,仍会抛出相同的异常。