這ž我在這裏的第一個問題和答案將高度讚賞插入數據,C#,LINQ to SQL中,在連接表
我有兩個表: -
Table1: EMPLOYEE{eid int(PK,identity), ename varchar}
Table 2: Sales {sid int(PK,identity), eid int(FK), totalsales money}
我想用插入數據LINQ
至sql
。
在此先感謝
這ž我在這裏的第一個問題和答案將高度讚賞插入數據,C#,LINQ to SQL中,在連接表
我有兩個表: -
Table1: EMPLOYEE{eid int(PK,identity), ename varchar}
Table 2: Sales {sid int(PK,identity), eid int(FK), totalsales money}
我想用插入數據LINQ
至sql
。
在此先感謝
它很可能是這樣的:
Employee employee = new Employee();
//populate Employee object
db.Employees.Add(employee);
編輯:然後添加員工後,填充銷售對象,並把它添加到數據庫,以及:
Sales sales = new Sales();
sales.eid = employee.id;
db.Sales.Add(sales);
iee先保存到Employee表中以獲取生成的Id。
欲瞭解更多信息,ScottGu's blog解釋得很好。
好吧,如果你有適當的外鍵,你可以一次全部保存這樣的(由心臟,所以請檢查拼寫正確,但你應該得到的作品)
Using (db = new yourdatacontext())
{
Employee em = new Employee;
em.name = "somename";
db.Employees.InsertOnSubmit(e);
Sales s = new Sales();
s.totalsales = 10000;
em.Sales.Add(s)
db.Submitchanges();
}
從該保持的重要組成部分你不需要搞混PK或外鍵或身份。 Linq-to-sql將爲您處理所有這些事情。交易也保存在提交更改中。這就是Linq-to-sql的美麗
thx。但我想插入數據在兩個表中,當身份自動增加時,我如何可以在表2中添加值。 – raza 2011-05-26 11:54:54
請參閱我編輯的答案。我非常建議你閱讀ScottGu的博客。 – tobias86 2011-05-26 12:04:28
這不是正確的做事方式。下面的Pleun使用鏈接的對象進行正確的操作。如果您同時添加父母和孩子,那麼在兩者之間進行保存是浪費的。幾乎總是如果你發現自己把外鍵分配給外鍵,你就錯了,讓框架爲你做連接。 – 2014-06-25 21:48:20