如何在 Entity Framework 5 中删除联结表中的记录?
在对我的 DataContext 进行逆向工程时,Entity Framework 似乎已经识别了我的联结表并自动将 Collections 添加到我的模型中以表示 M:M 关系。这在添加项目时非常有用,因为我可以简单地构建我的整个实体并且所有内容都可以正确插入。完美的。
但是,我对删除一段关系感到困惑。例如,一个 Activity 可以有多个与之关联的联系人,并且这是使用由以下列组成的联结表 (dbo.ActivityContacts) 链接的:
- 活动ID
- 联系人 ID
我的 Activity 和 Contact 模型都已由 EF 更新,并使用 Collections 来代表另一个。例如,我的 Activity 模型如下所示:
public class Activity
{
public int ActivityID { get; set; }
public string Subject { get; set; }
public virtual ICollection<Contacts> Contacts { get; set; }
}
在非 EF 环境中,我只需从联结表中删除记录并继续我的一天。但是,似乎我无法直接使用 EF 访问联结表,所以我对如何删除记录(关系)有点困惑。
如何从实体框架中的联结表中正确删除记录?