Sql server 将datetime2数据类型转换为datetime数据类型导致值超出范围

Sql server 将datetime2数据类型转换为datetime数据类型导致值超出范围,sql-server,silverlight,c#-4.0,Sql Server,Silverlight,C# 4.0,在silverlight中的代码中分配datetime值,并通过domainservice和EF将其保存到db: DateCreated=DateTime.Now 在数据库中,映射的列datetype是datetime,而不是datetime2 然后得到以下错误: 将datetime2数据类型转换为datetime数据类型导致值超出范围 如何修复它?在您的模型中,在数据类型后面打上问号 public DateTime? myDate {get; set;} 这将允许在数据库中写入NULL。可能

在silverlight中的代码中分配datetime值,并通过domainservice和EF将其保存到db: DateCreated=DateTime.Now

在数据库中,映射的列datetype是datetime,而不是datetime2

然后得到以下错误: 将datetime2数据类型转换为datetime数据类型导致值超出范围


如何修复它?

在您的模型中,在数据类型后面打上问号

public DateTime? myDate {get; set;}

这将允许在数据库中写入NULL。

可能的重复:找出它。因为DateTime使用多个项目。其中一些没有设置valuenull。