LINQ to SQL外键约束冲突

时间:2010-05-12 10:54:48

标签: c# linq linq-to-sql foreign-keys datacontext

我遇到LINQ问题。

我有2张桌子(亲子关系)

Table1: Events (EventID, Description)
Table2: Groups (GroupID, EventID(FK), Description)

现在我想创建一个活动和一个孩子。

Event e = new Event();
e.Description = "test";
Datacontext.Events.InsertOnSubmit(event)

Group g = new Group();
g.Description = "test2";
g.EventID = e.EventID;
Datacontext.Groups.InsertOnSubmit(g);

Datacontext.SubmitChanges();

当我调试时,我可以在插入事件后看到。 EventID获得了一个新值(自动增量)。

但是当Datacontext.SubmitChanges();被叫。我得到以下异常

 "The INSERT statement conflicted with the FOREIGN KEY constraint ...

我知道这可以通过在事件和组之间的LINQ图中创建关系来解决。然后设置实体本身。但我不想在每次询问群组列表时加载事件。

我需要的只是某种方式,当插入组失败时,事件插入将不会在数据库中提交。

对不起,如果有点不清楚,我的英语不是很好。

1 个答案:

答案 0 :(得分:0)

创建关系并不意味着您必须加载组的事件 - 您仍然可以正常查询组。