我对 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();
我只将第一个实体(“Test Note Title 1”)插入数据库。如果我在每个 InsertOnSubmit 之后放置一个 SubmitChanges,则所有行都成功插入。
上面的 Types 都是继承自 Note 类,所以插入到同一个表中。
但是,我在使用非派生类时遇到了同样的问题。
我花了很长时间看这个,但找不到我做错了什么。InsertOnSubmit/SubmitChanges 的整个想法是这样您就可以进行多项更改,因此我必须缺少一些简单的东西。