2011-07-29 30 views
0

我正在使用數據庫對象類InvceDtl的對象將多個記錄添加到發票詳細信息表。什麼是重用同一個對象的最佳方式?使用同一對象添加記錄的最佳方法LINQ C#

InvDtl oInvDtl = new InvDtl(); // for inserting product 

InvDtl.InvNo = invNo; 
oInvDtl.ProdCode = ProdCode; 
oInvDtl.ProdName = ProdName; 
oInvDtl.Qty=qty; 
oInvDtl.UnitPrce = UnitPrce; 
oInvDtl.ExtPrce=ExtPrce; 

dbContext.AddObject(oInvDtl); 
dbContext.SaveChanges(); 
dbContext.Detach(oInvDtl);// --> should we detach oInvDtl object to use it again? 

oInvDtl = new InvDtl(); // for inserting medication 

oInvDtl.InvNo =invNo; 
oInvDtl.MedCode =MedCode 
....... 
....... 

回答

3

正在重用的參考,而不是對象。在第一個分配之後的表達

oInvDtl = new InvDtl(); //Assignment #1 
..... 
oInvDtl = new InvDtl(); //Assignment #2 

(#1)的oInvDtl引用(指向)InvDtl的一個實例。在第二次分配(#2)之後,oInvDtl引用InvDtl的另一個不相關的實例。見Wikipedia on References in computer science

相關問題