2

我的项目有问题。在一个数据库中,关系与多对多连接。

什么人在实体框架中解决了这个问题?

4

2 回答 2

2

任何多对多关系都应该创建一个新表来表示配对。

示例:假设您有一张桌子People,并且您想显示谁送了生日礼物。一个人可以给很多朋友送礼物,也可以从很多人那里收到礼物。

CREATE TABLE People (person_id INT PRIMARY KEY);

CREATE TABLE GiftGiving (
  from_person_id INT,
  to_person_id INT,
  PRIMARY KEY (from_person_id, to_person_id),
  FOREIGN KEY (from_person_id) REFERENCES People(person_id),
  FOREIGN KEY (to_person_id)   REFERENCES People(person_id)
);

回复您的评论:

对于 EF 实现,请参阅以下相关问题:

于 2013-08-17T16:05:38.093 回答
0

我只是把一个ICollection 放在自己身上。让 EF 处理 db 层。公共类人{公共虚拟ICollection其他人{get;set;}}

于 2013-08-18T19:00:15.097 回答