在实体框架中更新视图的问题

时间:2015-08-07 06:54:12

标签: c# sql-server entity-framework

出于某些原因,我们需要在Views内更新Entity Framework。 所以我们遵循这个solution on another question,它就像一个魅力!

但是这是问题:
如果我们更新我们的模型(对于一些新的字段或表/视图),则完整的映射将被销毁,更新后我们将获得警告

  

错误11007:实体类型' UpdateView1'未映射。

在此之后,甚至无法加载实体,因为所有映射都丢失了 那么如何设计视图以便能够使用视图发布更新并且能够更新edmx文件?

1 个答案:

答案 0 :(得分:1)

MS正在放弃对实体框架中未来EDMX文件的支持 - 部分原因是由于难以保持数据库,EDMX和POCO全部同步,正如您所遇到的那样。 (任何人都可以编辑3中的任何一个,然后在完成同步时丢失更改)。

因此他们建议使用Code First方法。 Code First有点用词不当,引起一些混乱。

Code First并不意味着您必须从代码开始 您可以从数据库开始,然后编写您的POCO以匹配它(如您的情况)。这样做可以保留所有映射,因为您只需调整代码以匹配数据库中已存在的结构。

另一个误解是您必须使用迁移。你不。我们欢迎您不启用迁移并手动编辑数据库架构和POCO,只要您确保它们保持同步。