实体框架6从数据库更新忽略已删除的列,键入更改

时间:2014-03-20 20:41:40

标签: sql sql-server entity-framework

我在这里错过了什么吗?

我是一个.net 4.5.1项目,其中包含从SQL 2005数据库创建的实体框架模型(连接类型也是SQL Server),通过" ADO.NET实体数据模型"。

这很好用。也就是说,直到我更新数据库。如果我将新表或列添加到现有表中一切都很好,但是如果我删除了一列,则更新不能正常工作。当我改变列类型时,它也会抛出错误。

很久以前就报道了同样的问题:http://blog.jongallant.com/2012/08/entity-framework-manual-update.html#.UytNrvldVD0,但看起来很荒谬,我无法相信我没有遗漏某些东西。我当然做错了什么?如何让模型正确更新?

1 个答案:

答案 0 :(得分:2)

我有同样的问题。我打开了模型,从图中删除了已更改的表,然后从数据库中更新并重新添加了表。 EF以正确的结构再次将桌子带回来。保存模型,重建项目,一切都按预期进行。

我不确定为什么它没有检测到已删除的列。我相信如果您更改列的数据类型也存在问题,但我没有对其进行测试。但到目前为止,上述解决方案对我有用。

相关问题