簡體   English   中英

LINQ to SQL:InsertOnSubmit()vs Add()

[英]LINQ to SQL: InsertOnSubmit() vs Add()

插入新子記錄的最佳方法是:使用Add()InsertOnSubmit() 方法之間有什么區別嗎?

InsertOnSubmit()示例:

using (DataContext db = new DataContext())
{
   Parent p = db.Parents.Where(q => q.ID == SomeID).SingleOrDefault();
   Child c = new Child();
   c.ForeignKeyID = p.ID;
   db.InsertOnSubmit(c);
   db.SubmitChanges();
}

Add()示例:

using (DataContext db = new DataContext())
{
   Parent p = db.Parents.Where(q => q.ID == SomeID).SingleOrDefault();
   Child c = new Child();
   p.Add(c);
   db.SubmitChanges();
}

由於您已經擁有父ID,因此執行此操作會更有效:

using(DataContext db = new DataContext())
{
   Child c = new Child();
   c.ForeignKeyID = SomeID;
   db.InsertOnSubmit(c);
   db.SubmitChanges();
}

這樣您就不會首先檢索父級並依賴對象跟蹤來查找新項目。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM