Ado.Net实体数据模型未正确更新

时间:2009-04-21 21:14:01

标签: entity-framework

我已完成以下步骤: - 开放式视觉工作室
- 创建新项目
- 选择“ADO.Net实体数据模型”
- 将其指向现有数据库
- 接受所有默认值 - 然后它将“Model1.edmx”文件添加到我的解决方案和相应的“Model1.Designer.cs”文件中。

但是在输出中我收到以下错误:
“错误:由于以下异常,无法生成模型:'值不在预期范围内。'。”

之前我已经从这个数据库中创建了一个模型,所以我不认为错误是复杂表设计的结果(事实并非如此)。

还有其他人遇到此错误吗?

由于

10 个答案:

答案 0 :(得分:2)

我有类似的问题。原因很简单。我忘了在我的一张桌子里设置一把主键。希望它有所帮助。

答案 1 :(得分:1)

确定....
我想我可能有一个解决方案。 我刚刚完成了以下工作并且有效。

  • 创建新项目
  • 向其添加Ado数据模型。
  • 所以项目中唯一的东西就是模型,并没有引用任何其他项目,所以它可以站立并建立在它自己的基础上。
  • 我收到了上面在这个项目中提到的错误
  • 删除Model1.edmx文件。
  • 删除对“System.Data.Entity.dll”的项目引用(这是关键)
  • 从“App.config”
  • 中删除connectionStrings
  • 重建项目
  • 将“ADO.Net实体数据模型”添加回项目中。

现在有效。
取消nerving。
但它的确有效。

答案 2 :(得分:1)

确定。
我能够读到它。 这就是我做的。

子弹点上面的所有步骤加上:

  • 关闭Visual Studio 2008
  • 重新启动Sql Server 2005
  • 重新打开Visual Studio 08.

仍然难以理解如何解决这个问题。

答案 3 :(得分:1)

请检查是否已为表定义主键。如果您在xml编辑器中打开实体模型,您应该能够看到注释错误消息,评论可能对您有帮助!

答案 4 :(得分:1)

当我在点击model.edmx文件时无法打开“设计视图”时,我在VS2008中卸载项目,然后重新加载它,似乎解决了这个问题。

答案 5 :(得分:1)

我在使用Ria服务的MYSQL数据库时遇到了同样的问题。

<强>解决方案:
我发现当导入多个表时,实体模型在至少一个表中需要一个主键。
我的表的主键也设置为自动增量。

答案 6 :(得分:0)

您可以先向模型添加一个表,并在创建edmx文件时,可以从数据库中更新模型。它对我有用。我希望它也能解决你的问题。

欢呼声 成员Parminder

答案 7 :(得分:0)

我刚刚调查过类似的问题。事实证明,Entity Framework在Visual Studio的Messages窗口的Error List部分输出了其他错误信息。

正如您所看到的,它比Output窗口中出现的一般错误更有用。这对帮助我解决问题至关重要。

enter image description here

答案 8 :(得分:0)

我遇到了同样的问题。

原因似乎很简单:缺少主键列。

答案 9 :(得分:0)

我有同样的问题, 简单的解决方案是: 从visual studio和具有相同名称的新ado.net模型中删除您的模型, 之前删除配置文件中的所有连接字符串