实体框架:生成的SQL-找不到数据类型datetime2

问题描述

|| 因此,我们将dev sql服务器迁移到了2008年。 我们的UAT sql服务器仍然是2005。 由于某些其他原因,我不得不重新生成实体框架模型,并将工作部署到UAT时,我注意到了此错误: 找不到数据类型datetime2 我分析了数据库,并注意到Entity Framework生成的输入参数为datetime2!
N\'@p__linq__0 datetime2(7)\',@p__linq__0=\'9999-12-31 00:00:00\'
这在dev中执行得很好,因为datetime2是其中的一种类型。但在2005年部署到环境时失败。 这是某种已知类型吗?为什么实体框架不使用常规日期时间,如何使其跨环境兼容? 也许这与2008年的升级没有关系..但这不是升级之前的问题,并且此代码未更改。     

解决方法

看看MS Connect上的“错误”-解决方法似乎提供了相当简单的修复程序。 也涵盖在这里。