我得到了以下错误:
Operator '??' cannot be applied to operands of type 'System.DateTime'
foreach (EndServReward r in reward)
{
if (con.State == ConnectionState.Closed)
{
con.Open();
}
myIfxCmd.Parameters[0].Value = r.EmpNum ;
myIfxCmd.Parameters[1].Value = (r.ServDate) ?? DBNull.Value;
}
当 reward
是 List<EndServReward>
类型时,为什么会出现这种情况?如何解决?
r.ServDate
不能为null
?!我想检查它们是否为空属性或未设置(填充)值。 - Anyname DonotcareDateTime
是一个结构体,保证被初始化为全部为零。全部为零等于DateTime.MinValue
(0000-01-01),这是将会插入到数据库中的值。 - Corakdatetime
列中不接受 1753 年之前的年份。它会拒绝 DateTime.MinValue (0001-01-01)。 - Hans KestingDateTime.MinValue
就是“将尝试插入数据库的内容”。 - Corak