如何将可为空的DateTime变量's的空值转换为DbNull.Value
本文关键字:Value 空值 转换 DbNull 变量 DateTime | 更新日期: 2023-09-27 18:19:06
我有一个可空的DateTime变量。我想把它写进SQL数据库。当我尝试插入:
时如果变量有值,则没有问题。
但如果没有值,插入会中断并出现错误。
我想问:我们如何通过DbCommand参数插入可空的DateTime到Sql ?
(注:: Sql列也可为空)
DateTime? myDate = null;
DbCommand dbCommand = new DbCommand();
dbCommand.Parameters.Add("NullableSqlDateField", DbType.DateTime, myDate);
尝试null合并运算符:
dbCommand.Parameters.Add("NullableSqlDateField", DbType.DateTime, (object) myDate ?? DbNull.Value);
try this
if(myDate.HasValue)
dbCommand.Parameters.Add("NullableSqlDateField", DbType.DateTime, myDate.Value);
else
dbCommand.Parameters.Add("NullableSqlDateField", DbType.DateTime, DbNull.Value);