Sql server 保存在一个事务实体框架中的简单表和多对多关系表中

Sql server 保存在一个事务实体框架中的简单表和多对多关系表中,sql-server,Sql Server,您好,我有MS SQL中的表,例如: Employee( id int primary key identity(1,1), firstName nvarchar(50), lastName nvarchar(50), ) and many-to many relationship table ordersEmployee( id int primary key identity(1,1) order_id int foreign key references o

您好,我有MS SQL中的表,例如:

Employee(
id int primary key identity(1,1),
firstName nvarchar(50),
lastName nvarchar(50),


)

and many-to many relationship table

    ordersEmployee(
    id int primary key identity(1,1)
    order_id int foreign key references order(id),
    employee_id int foreign key references employee(id),
   )

我正在使用实体框架,我想在Employees表中保存新员工,这是ordersEmployee表中单个事务中的员工id。我如何才能做到这一点?

SaveChanges
创建事务。如果您必须调用
SaveChanges
两次(或更多),您可以使用
TransactionScope

using(var tx = new TransactionScope())
{
    // ...
    context.SaveChanges();
    // ...
    context.SaveChanges();

    tx.Complete();
}

调用第一个saveChanges后如何获取员工的主键?调用
saveChanges
后,EF会自动填充
Id
属性。但是创建关系不需要知道
Id
。添加员工,将订单添加到其Orders属性,然后调用
SaveChanges
。EF应该保存一切。