【发布时间】:2010-05-12 10:54:48
【问题描述】:
我在使用 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 图中创建事件和组之间的关系来解决。然后设置实体本身。但我不想每次询问组列表时都加载事件。
我只需要某种方式,当插入组失败时,不会在数据库中提交事件插入。
对不起,如果这有点不清楚,我的英语不是很好。
【问题讨论】:
标签: c# linq linq-to-sql foreign-keys datacontext