有人知道如何在Entity Framework 7中创建显式事务吗??? 我找到的所有信息都是指EF的第6版.文档也非常不完整,所以有人能提供一个例子吗?
我有一个dbContext,我必须删除一个实体及其相关的对象,然后再次插入它们,但在同一个事务中,所以我总是有一个行的"版本".
事务功能包含在EF7中,仅从RC1开始(请参阅语句)..SaveChanges()
(或.SaveChangesAsync()
)的调用应该使用自动交易.然后我想,例如,之前某些实体项的状态应该标记为已删除.
可以通过在数据库内部包含一些操作片段来显式启动事务
using (context.Database.BeginTransaction()) {
/*do something*/
}
该事务将.Dispose()
在using
块结束时通过调用提交.可以替代地使用
using (var transaction = await context.Database.BeginTransactionAsync()) {
/*do something*/
/*one can call
transaction.Rollback() or transaction.Commit()
explicitly in the code */
}
它通常都应该在以前版本的Entity Framework中看起来像.例如,请参阅帖子.