这ž我在这里的第一个问题和答案将高度赞赏插入数据,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