C# 日期时间格式正确的SQLDateTime溢出
下面是我的代码段,我在其中向SQL数据库插入了日期时间值,并遇到以下错误: System.Data.SqlTypes.SqlTypeException:SqlDateTime溢出。必须是 1753年1月1日12:00:00至1999年12月31日11:59:59之间C# 日期时间格式正确的SQLDateTime溢出,c#,sql,linq,datetime,C#,Sql,Linq,Datetime,下面是我的代码段,我在其中向SQL数据库插入了日期时间值,并遇到以下错误: System.Data.SqlTypes.SqlTypeException:SqlDateTime溢出。必须是 1753年1月1日12:00:00至1999年12月31日11:59:59之间 我可以知道是否有一种格式可以使用吗?转换行.DeliveryDate的值时?如果使用的是dateTime.toString(),则需要确保字符串的格式符合: deliveryCart.DeliveryDate.ToString("y
我可以知道是否有一种格式可以使用吗?转换
行.DeliveryDate的值时
?如果使用的是dateTime.toString(),则需要确保字符串的格式符合:
deliveryCart.DeliveryDate.ToString("yyyy-MM-ddTHH:mm:ss.fffffff");
此外,DateTime是一种值类型,而不是引用类型。所以,它不能为空。值类型(如果未初始化)的值为0。对于Datetime,它可以是Datetime.MinValue,这超出了Sql Server的值。实际上问题是
Sql Datetime
=/=C#Datetime
你需要改变两件事
- 数据库将字段类型从
更改为DateTime
DateTime2
- 查询您需要是显式的
您可以找到更多信息,这是否回答了您的问题?该deliveryCart是否有其他日期,可能是DateTime.MinValue?deliveryCart的属性是什么?表的列(及其类型)是什么?不应将该日期值作为字符串传递给SQL,而应作为某个日期类型的参数(的日期时间值)传递给SQL。所以不需要格式化。
deliveryCart.DeliveryDate.ToString("yyyy-MM-ddTHH:mm:ss.fffffff");