作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
当我执行以下操作时,我得到:
inv.RSV = pid.RSVDate
我得到以下信息:无法隐式转换类型 System.DateTime?到 System.DateTime。
在这种情况下,inv.RSV 是 DateTime 而 pid.RSVDate 是 DateTime?
我尝试了以下但没有成功:
if (pid.RSVDate != null)
{
inv.RSV = pid.RSVDate != null ? pid.RSVDate : (DateTime?)null;
}
如果 pid.RSVDate 为空,我喜欢不给 inv.RSV 分配任何东西,在这种情况下它将为空。
最佳答案
日期时间不能为空。它的默认值为 DateTime.MinValue
。
你要做的是:
if (pid.RSVDate.HasValue)
{
inv.RSV = pid.RSVDate.Value;
}
或者,更简洁:
inv.RSV = pid.RSVDate ?? DateTime.MinValue;
关于c# - 不能隐式转换类型 System.DateTime?到 System.DateTime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8389316/
我是一名优秀的程序员,十分优秀!