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

6
我已经完成以下步骤: - 打开Visual Studio - 创建新项目 - 选择“ADO.Net Entity Data Model” - 将其指向现有数据库 - 接受所有默认值。 - 然后它会将“Model1.edmx”文件添加到我的解决方案中,以及相应的“Model1.Designer.cs”文件。
但是,在输出中我得到了以下错误: “错误:由于以下异常无法生成模型:‘值不在预期范围内。’”
我之前已经从这个数据库创建过一个模型,所以我认为错误不是复杂表设计的结果(实际上并不是)。
有其他人遇到过这个错误吗?
谢谢

1
我刚刚添加了一个新项目,并按照上述步骤进行了操作,它可以正常工作。因此,这是专门用于重新添加新的数据模型。(我已经清除了App.config中的连接字符串) - Garth
10个回答

2

我曾遇到类似的问题。原因非常简单,我忘记在其中一张表格中设置主键。希望这能有所帮助。


1

我在使用Ria服务时遇到了与MYSQL数据库相关的问题。

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


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

1

好的....
我觉得我可能有一个解决方案。 我刚刚做了以下操作,它起作用了。

  • 创建一个新项目
  • 添加Ado数据模型。
  • 因此,项目中唯一的内容是该模型,它不引用任何其他项目,因此可以独立地建立和构建。
  • 我在这个项目中遇到了上面提到的错误
  • 删除Model1.edmx文件。
  • 从“App.config”中删除对“System.Data.Entity.dll”的项目引用(这是关键)
  • 删除“connectionStrings”
  • 重新构建项目
  • 将“ADO.Net Entity Data Model”添加回您的项目中。

现在它可以工作。
让人不安。
但它可以工作。


1

好的。
我成功读取了它。 这是我所做的。

所有上面的步骤加上:

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

仍然困惑于如何解决这个问题。


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

0
我曾经遇到过同样的问题, 简单的解决方法是: 从 Visual Studio 中删除您的模型,然后使用相同的名称创建一个新的 ADO.NET 模型, 在此之前,请从配置文件中删除所有连接字符串。

0

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

祝好 Parminder


0

我刚刚调查了一个类似的问题。原来,Entity Framework 在 Visual Studio 的 Error List 窗口的 Messages 部分输出了额外的错误信息。

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

enter image description here


0

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接