当前位置:  开发笔记 > 编程语言 > 正文

实体框架7中的显式事务

如何解决《实体框架7中的显式事务》经验,为你挑选了1个好方法。

有人知道如何在Entity Framework 7中创建显式事务吗??? 我找到的所有信息都是指EF的第6版.文档也非常不完整,所以有人能提供一个例子吗?

我有一个dbContext,我必须删除一个实体及其相关的对象,然后再次插入它们,但在同一个事务中,所以我总是有一个行的"版本".



1> Oleg..:

事务功能包含在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中看起来像.例如,请参阅帖子.

推荐阅读
牛尾巴2010
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有