【发布时间】:2012-02-15 19:27:02
【问题描述】:
我遇到了一个错误,我的实体框架有一个错误。我有一个 SQL Server 2005 SP2。
当 ProviderManifestToken = "2008" 我得到这个错误。
The version of SQL Server in use does not support datatype 'datetime2'.
我已经完成了shown here 的更改,当更改为“2005”时,我得到了
Schema specified is not valid. Errors:
DatabaseAccess.Schema.Model1.ssdl(2,123) : error 0169: All SSDL artifacts must
target the same provider. The ProviderManifestToken '2008' is different
from '2005' that was encountered earlier.
我不明白
我的数据库版本是 Microsoft SQL Server Standard Edition(64 位)9.00.3042.00
我尝试删除架构并重新添加它无济于事。重启等
我还让我所有的日期时间字段都可以为空
【问题讨论】:
-
datetime2数据类型在 SQL Server 2005 中不可用。 -
我知道,我不知道它是怎么捡起来的,在我的配置中 public Nullable<:system.datetime> MessageDate { get { return _MessageDate; } 设置 { OnMessageDateChanging(值); ReportPropertyChanging("消息日期"); _MessageDate = StructuralObject.SetValidValue(value); ReportPropertyChanged("消息日期"); OnMessageDateChanged(); } }
-
在我的任何源代码中都找不到 datetime2
-
datetime2是 SQL 数据类型,而不是 .NET 数据类型。根据您使用的提供程序(SQL Server 2005、2008 等),您的每个实体的属性都从 .NET 类型映射到 SQL 类型。 -
好的,很好理解,我该如何解决这个问题?
标签: asp.net sql-server entity-framework