EF以编程方式插入多个到多个

时间:2010-05-02 20:28:51

标签: entity-framework

我有这个结构ID PK的表和两个带FK的列,例如ActivityID和ContactID。 我尝试以编程方式在这两个FK列中插入一些值。 我怎么能这样做,任何帮助都是适当的.Tnx

2 个答案:

答案 0 :(得分:0)

我认为最好的解决方案是摆脱主键,将ActivityID和ContactID的组合设置为PK,然后在可视化设计器中重新创建整个模型。每个Activity对象都有Contacts导航属性,每个Contact都有Activities。您可以通过调用以下内容将活动添加到活动中:

activity.Contacts.Add(contact);

如果你真的需要额外的ID,那就更复杂了。

答案 1 :(得分:0)

如果您想使用您的结构 - 您必须获取Activity和Contact的实例,并在新实体上设置相应的属性。

var newActivityContact = new ActivityContact();// m_Entities.CreateActivityContact(0);
newActivityContact.Activity = activityRepository.GetById(activityId);
newActivityContact.Contact = contactRepository.GetById(contactId);
m_Entities.AddToActivityContact(newActivityContact);
m_Entities.SaveChanges();