实体数据模型设计器不会打开edmx文件

Leg*_*ion 13 .net mapping ado.net edmx entity-framework-5

奇怪的是,几天前工作正常.我在表中添加了一个新列,并将通过设计器更新模型,现在它说"实体数据模型设计器无法显示您请求的文件.您可以使用XML编辑器编辑模型."

关于新字段没什么特别值得注意的,它只是SQL Server 2008中一个不可空的位字段.

Cha*_*lie 14

适用于Visual Studio 2017

我搜索了解决方案,但想出了一些NUGET包和扩展程序的安装,没有任何问题.

解决方案(Visual Studio上缺少实体框架)

  1. 我在我的机器上搜索了Visual Studio Installer并打开了它.
  2. Visual Studio Professional 2017下.
  3. 我点击了更多 以查看更多选项.我选择了修改
  4. 选择Indivitual Components(第二个标签)
  5. 检查SDK,库和框架下的实体框架
  6. 然后单击修改EDMX文件将在进程完成后打开.

  • 关于第5点,确切的库名称是"Entity Framework 6工具". (4认同)

小智 10

这种情况发生在我身上几次,通常是从颠覆中解决出来的.重建项目总是为我解决问题.

  • 这也是我的原因 - 我认为原因是EntityFramework是一个nuget包,我们从源代码控制中排除packages /目录(因为它的二进制文件只是get-redownloaded).重建导致所有包都被下载,这使得EntityFramework dll等可用. (3认同)

小智 8

我也遇到了烦人的屏幕.不,我不想用XML编辑我的模型......我想要漂亮的设计师!在我的情况下,我添加了一个没有主键的表.修理...

1)以XML格式打开edmx

2)删除错误的表.它应该用"< - ERROR"评论很好地定义.

3)清洁和重建.

4)关闭并重新打开Visual Studio(是的,它很烦人但很必要)

5)再重建一次,然后打开你的edmx文件.应该打开设计师罚款.

希望这可以帮助.


Leg*_*ion 7

通过删除文件并重新生成它来修复.

  • 你如何重新生成.edmx文件? (9认同)
  • 这在理论上是有效的,但它将删除所有自定义,例如重命名某些导航属性。 (2认同)

小智 5

这种情况在我们身上经常发生(通常是由于错误的合并),并且我们的 EDMX 文件超过 50k 行,这使得肉眼无法发现问题。但是,首先,您可以使用在线 XML 解析器之一(例如https://onlinexmltools.com/validate-xml)来确定 XML 是否正确。一旦 XML 有效,该文件至少应该在 XML 编辑器中打开(我假设您使用的是 Visual Studio):然后您可以使用 Alt+PageDn(编辑 > 转到 > 下一期) - 摆动的下划线和相关提示通常是真正的帮助。我已经用这种方法多次成功地复活了我们的 EDMX。