9

在使用 Entity Framework 6.1.2 的 Visual Studio 2013(更新 2 和更高版本的更新 4)中,我在创建 EDMX 文件时遇到问题。

创建文件时,我添加一个新项目,选择“ADO.NET 实体数据模型”,无论我是创建“空 EF 设计器模型”还是“来自数据库的 EF 设计器”(无论我可能选择哪个数据库如果构建数据库)我收到一个非常通用的错误消息:

“由于对象的当前状态,操作无效”

它让我回到添加新项目向导。生成了 *.edmx,但如果我尝试打开生成的 *.edmx 文件,我会收到另一条通用消息:

“操作无法完成。”

*.designer.cs 文件似乎已填充,但并非所有程序集引用都添加到项目中;必须手动添加 System.Data.Entity 才能解析对 System.Data.Objects 的引用。

我已经为 Visual Studio 的两个版本安装了适用于 Visual Studio 2012 和 2013 的 Entity Framework 6 Tools。我已经尝试对绑定到 TFS 和未绑定的项目执行此操作,并且在任何一种情况下错误都仍然存在。

如果我在 Visual Studio 2012 中打开解决方案,同样的错误仍然存​​在。我能够在 Visual Studio 2010 中成功添加 *.edmx 文件,然后在 Visual Studio 2013打开项目,*.edmx 文件存在并可访问;它打开并且我可以查看它,但是如果我移动或编辑,我会收到以下错误:

“此事务中涉及的 XmlModel 不可编辑。”

有没有人对此有任何建议,或者我的环境中可能缺少什么?我对系统上的设置不正确感到不知所措。

4

1 回答 1

20

基于错误“此事务中涉及的 XmlModels 不可编辑”,我能够找到对类似问题的响应:

Entity Framework 无法刷新 TFS 2010 下的数据库表

简而言之,我的项目和解决方案存储在磁盘上的 C:\Code\C#\Application\[etcetera]

问题是解决方案/项目/文件路径中的“#”字符。将解决方案快速复制到 C:\Code\CSharp\[etcetera] 解决了添加和编辑现有 *.edmx 文件的问题。

我回答这个是为了保存古人的智慧

于 2015-01-30T16:45:32.593 回答