6

好吧,在花了无数时间谷歌搜索答案之后,我不得不在这件事上添加另一个问题......

我有一个包含 2 个日期时间字段的表,由 VS 2010 中的 EF4 EDMX 设计器生成。

SQL 2008 中生成的字段是 datetime 而不是 datetime2。

查看 edmx 标记,这些字段的类型为 datetime2。

插入因已知的转换问题 datetime2 / datetime....而失败

我已手动将 sql 表上的字段更改为 datetime2。

仍然没有运气。

我可能在这里遗漏了一些东西,但无法弄清楚到底发生了什么。

我什至尝试从设计器重新生成数据库并从数据库重新创建 edmx ......

仍然是同样的问题。

非常感谢任何帮助。

4

2 回答 2

0

曾经由于从 SQL Server 2005 创建模型然后尝试使用 SQL Server 2008 访问而导致我遇到了类似的问题。我通过使用 notepad++ 编辑 edmx 文件或在 edmx 的以下第二行中将 2005 更改为 2008 来解决此问题文件:

<edmx:Edmx Version="2.0" xmlns:edmx="http://schemas.microsoft.com/ado/2008/10/edmx">

要尝试的另一件事是删除 edmx 中的表,然后右键单击从数据库中更新模型以希望这次使用正确的数据类型重新添加它。

于 2011-05-04T16:13:15.477 回答
0

此问题的一种解决方案是确保您正确初始化实体中的日期时间。Datetime 是一个结构体,默认初始化为 0。

我确实搜索了一段时间。

于 2011-07-06T20:21:49.850 回答