首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Entity Framework4EntityDesigner中正确设置两个对象之间的关联?

如何在Entity Framework4EntityDesigner中正确设置两个对象之间的关联?
EN

Stack Overflow用户
提问于 2010-09-13 21:04:54
回答 6查看 58.9K关注 0票数 54

对于一个新项目,我正在尝试先创建我的业务类,然后再创建真正的数据库表。因此,我使用Entity Framework4设计器。创建了一个扩展名为.edmx的新"ADO.Net实体数据模型“文件。

我创建了两个实体:

我想在产品->组之间添加一个1到nc的关系。如果我首先创建了MSSQL数据库,我会在表Product中添加一个列IDGroup,并将Product.IDGroup引用到Group.IDGroup。就我所见,如果向产品实体添加一个名为IDGroup的新属性,则无法在设计器中添加此类关联

下面是我添加映射的方式:

这会导致:

现在是关于这个问题的部分:如果我将现有MSSQL数据库中的两个表添加到edmx文件中,我将得到编译错误:

代码语言:javascript
复制
Error 3027: No mapping specified for the following EntitySet/AssociationSet - GroupSet, ProductSet

这个错误意味着什么,我必须做什么来修复这个错误?如果我删除这两个表,我将收到一条警告:

代码语言:javascript
复制
Error 2062: No mapping specified for instances of the EntitySet and AssociationSet in the EntityContainer myContainer.

有种感觉告诉我,我做错了这一切,这只是最基本的东西。我怎么才能做得对呢?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2010-09-14 02:55:09

我自己也遇到了这个问题&当我用Googled搜索它的时候(我回答了你的问题)。

我可以在设计器中双击这条线(关联线)。填写那里的属性,我就让它正常工作了。

我还不得不关闭VS并重新打开它,以获得一些报告的错误。

不能说这是正确的答案--只是笨手笨脚地摸索,似乎得到了结果。

票数 85
EN

Stack Overflow用户

发布于 2011-05-09 22:50:44

当我在安装了EF4.1的VS2010 SP1下使用ADO.Net DBContext生成器从数据库生成模型时,我得到了这个错误。我使用的数据库在主键和外键字段之间没有任何引用完整性。

解决方案是双击关联线,这将打开Referential Contstrainst对话框。然后,我将Principal字段设置为具有主键的表,将Dependent字段设置为具有外键的表,在下拉列表中设置要匹配的外键名称,然后单击OK。

然后编译代码,我可以使用var foreign =DBContext.Primary.First()、.Foreign等跨实体工作

史蒂夫

票数 6
EN

Stack Overflow用户

发布于 2011-05-05 09:14:02

我也犯了同样的错误,“添加关联”对话框没有帮助我设置的一个配置是“引用约束”属性。一旦我进行了配置,我重新构建了解决方案,一切都很酷。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3700637

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档