使用LINQ,如何在SQL Server 2008 DateTime列中插入空值?
以下代码插入“1/1/1900 12:00:00 AM”, 但我想插入“NULL”而不是
CreatDate = System.Data.SqlTypes.SqlDateTime.Null
答案 0 :(得分:6)
确保DB中的列设置为允许NULL并且您的实体属性“CreateDate”定义为“DateTime?CreateDate {get; set;}”。然后,只需设置“CreateDate = null”。
答案 1 :(得分:0)
您的CreateDate
属性需要声明Nullable<DateTime>
(又名DateTime?
)。然后,您可以将Linqed-up对象上的该属性设置为null
(不是System.Data.SqlTypes.SqlDateTime.Null
,只是普通的旧C#null
),您应该得到所需的结果。当然,这假定您的SQL表已正确定义列以允许NULL,并且您对DBML中列的定义也允许它们。