情况:有时
数据库模式不是您认为理想的系统信息表示,您可能无法更改它.我们一直在使用Entity Framework来创建一个更好的概念模型,以便在这种情况下进行编码.这意味着从
数据库更新模型,然后通过设计器或直接使用文本编辑器直接通过.edmx
文件更改模型.
问题:当您从数据库更新模型时,所有精心设计的更改都会被抛出窗口.这可以使添加新实体变得非常麻烦,因为您基本上不得不通过直接编辑.edmx文件来执行此操作.
问题:是否有办法让实体框架只从数据库中更新选定的实体?或者是否可以告诉它在添加新实体时单独留下模型的其余部分?
谢谢!
没有办法使用内置设计器进行选择性更新.此外,设计师也不会丢弃所有更改.它通常不接触概念模型(除了一些罕见的情况,它不断
重命名一些关联)和映射,但它总是
删除存储模型并用新定义覆盖它.我对我的概念模型的
修改以及映射和运行
数据库更新没有任何问题.
Designer与Visual Studio中的任何其他工具一样 – 触摸生成的代码(存储模型)是不受支持的功能.执行此操作后,您将无法再使用“从数据库更新”.
有commercial tool可能支持更好的模型更新 – 您可以尝试试用.