How to Convert a Nullable DateTime variable's null value to DbNull.Value
-
09-04-2021 - |
Question
I have a nullable DateTime Variable. And I want to write it to SQL DB. When i try to insert:
If the variable has value there is no problem.
But if it hasn't a value, insertion interrupting with an error.
I want to ask: How can we insert nullable DateTime to Sql via DbCommand Parameter?
(P.S. : Sql column is nullable too.)
DateTime? myDate = null;
DbCommand dbCommand = new DbCommand();
dbCommand.Parameters.Add("NullableSqlDateField", DbType.DateTime, myDate);
Solution
Try the null coalescing operator:
dbCommand.Parameters.Add("NullableSqlDateField", DbType.DateTime, (object) myDate ?? DbNull.Value);
OTHER TIPS
try this
if(myDate.HasValue)
dbCommand.Parameters.Add("NullableSqlDateField", DbType.DateTime, myDate.Value);
else
dbCommand.Parameters.Add("NullableSqlDateField", DbType.DateTime, DbNull.Value);
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow