Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 日期时间格式正确的SQLDateTime溢出_C#_Sql_Linq_Datetime - Fatal编程技术网

C# 日期时间格式正确的SQLDateTime溢出

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

下面是我的代码段,我在其中向SQL数据库插入了日期时间值,并遇到以下错误:

System.Data.SqlTypes.SqlTypeException:SqlDateTime溢出。必须是 1753年1月1日12:00:00至1999年12月31日11:59:59之间


我可以知道是否有一种格式可以使用吗?转换
行.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");