带DateTime的条件运算符?赢得';t编译
本文关键字:编译 赢得 DateTime 条件运算符 | 更新日期: 2023-09-27 18:25:25
有人能告诉我为什么不编译吗?
DateTime? completedDT;
bool completed = false;
completedDT= completed ? DateTime.Now : null;
我本以为,在写入可为null的对象(DateTime?
)时,使用null是可以接受的。相反,我得到了这个错误:
错误19无法确定条件表达式的类型,因为"System.DateTime"answers"null"之间没有隐式转换
有几个选项:
completedDT= completed ? DateTime.Now : new DateTime?();
completedDT= completed ? DateTime.Now : (DateTime?)null;
completedDT= completed ? DateTime.Now : default(DateTime?);
感谢C.Evenhuis提供default()
选项。