0
我有一个Linq to SQL InsertOnSubmit的问题,它似乎只适用于表中的第一个项目。Linq to SQL InsertOnSubmit多个对象
例如有以下几点:
var noteDetail1 = new NoteDetail() { Title = "Test Note Title 1", NoteText = "Test note" };
var waiverDetail1 = new WaiverDetail() { Title = "Test Waiver Title 1", NoteText = "Test waiver details text" };
var riskDetail1 = new RiskDetail() { Title = "Test Risk Title 1", NoteText = "Test risk details text" };
context.Notes.InsertOnSubmit(noteDetail1);
context.Notes.InsertOnSubmit(riskDetail1);
context.Notes.InsertOnSubmit(waiverDetail1);
context.SubmitChanges();
我只得到了第一个实体(“测试注意标题1”)插入到数据库中。如果在每个InsertOnSubmit之后放置SubmitChanges,则所有行均已成功插入。
上述类型都是从Note类继承的,所以都插入到同一个表中。
但是,我遇到了与非派生类相同的问题。
我花了很长时间看这个,但无法找到我做错了什么。 InsertOnSubmit/SubmitChanges的整个想法是这样,你可以做多个更改,所以一定有一些简单的我缺少的东西。
你有什么异常吗? – Jonathan 2010-09-08 15:52:47
没有例外,它只是不起作用。刚才我想到,也许这是由于Id字段是自动递增数据库分配的标识字段,所以Linq to SQL无法区分它们。事实上,虽然我只是写这篇文章,但我敢打赌,这是因为我有重写等于比较Id。我会检查一下。 – Darren 2010-09-08 15:58:54