0

我们首先使用 EF 4.1 和代码。虽然我们的生产数据库是 SQL Server 2005,但我们的一些开发人员在本地拥有 SQL Server 2008。我们的 TFS 构建服务器也是 2008。在本地和构建服务器上运行单元测试时,由于 datetime 和 datetime2 之间的差异,我们遇到了问题。即使数据库上的列是“datetime”,使用 SQL Profiler 我们可以看到 EF 将该列视为“datetime2”。

我看到文章提到我们应该将 EDMX 文件中的 ProviderManifestToken 设置为 2005 来解决这个问题,但我们首先使用的是 EF 代码。有没有办法先使用代码解决这个问题?

4

2 回答 2

0

对于 EF5 Code First,它不仅仅是更改 xml 中的字符串。看看这篇博文它包含一个显式设置提供者清单令牌的示例。在 EF6 中,您可以设置只配置返回提供程序清单令牌的解析器。

于 2013-03-13T16:32:06.163 回答
0

看到这个

只需使用datetime而不是datetime2. 它适用于我的项目。

于 2018-06-08T04:23:26.457 回答