Có một nghịch lý trong mô tả ngoại lệ: Đối tượng Nullable phải có giá trị (?!)
Đây là vấn đề:
Tôi có một DateTimeExtendedlớp học
{
DateTime? MyDataTime;
int? otherdata;
}
và một nhà xây dựng
DateTimeExtended(DateTimeExtended myNewDT)
{
this.MyDateTime = myNewDT.MyDateTime.Value;
this.otherdata = myNewDT.otherdata;
}
chạy mã này
DateTimeExtended res = new DateTimeExtended(oldDTE);
ném một InvalidOperationExceptionthông điệp:
Đối tượng Nullable phải có một giá trị.
myNewDT.MyDateTime.Value- là hợp lệ và chứa một DateTimeđối tượng thông thường .
Ý nghĩa của thông điệp này là gì và tôi đang làm gì sai?
Lưu ý oldDTElà không null. Tôi đã xóa Valuetừ myNewDT.MyDateTimenhưng ngoại lệ tương tự được đưa ra do một setter được tạo.