LINQ 主从表插入
SQL CODE:
use csdn
--部门表(department)
--id(int)自增
--name(varchar)
--员工表(employee)
--id(int)自增
--deptId(int)
--name(varchar)
create table department--主表
(id int primary key identity(1,1),
name nvarchar(20)
)
create table employee --从表
(id int primary key identity,
deptId int,
name nvarchar(20))
use csdn
--部门表(department)
--id(int)自增
--name(varchar)
--员工表(employee)
--id(int)自增
--deptId(int)
--name(varchar)
create table department--主表
(id int primary key identity(1,1),
name nvarchar(20)
)
create table employee --从表
(id int primary key identity,
deptId int,
name nvarchar(20))
程序:
CSDNDataContext db = new CSDNDataContext();
department dept = new department();
employee ey = new employee();
dept.name = "社会部";
ey.deptId = dept.id;//这句可以不要,可以自动加入
ey.name = "lester";
dept.employee.Add(ey);
db.department.InsertOnSubmit(dept);
db.SubmitChanges();
不管理是使用 LINQ to SQL 还是 ADO.NET Entity Data Model ,对于一起新增的主实体与子实体,在调用了 SubmitChanges() 或 SaveChanges() 后,子实体的外键字段是会自动根据主实体的主键而被赋值的,这种机制是 LINQ to SQL 、 ADO.NET Entity Data Model 都具有的,不需要人为去干涉。

浙公网安备 33010602011771号