文件系统和数据库操作的原子事务

本文关键字:事务 操作 数据库 文件系统 | 更新日期: 2023-09-27 18:02:10

我有一个实现原子事务的问题,它涉及:

  1. 文件系统操作,如添加,编辑,移动,复制和删除文件。
  2. Linq操作(实体框架),如添加对象和保存更改。

这两种类型的操作应该一起提交/回滚。

我四处寻找解决方案,发现(事务性NTFS &.NET TransactionScope类)是我最好的选择,现在我的问题是TransactionScope类是否支持EF linq操作?如果你能给我提供一些简单的例子,我在这里有点迷路了。

文件系统和数据库操作的原子事务

是Linq to Sql支持。net事务。SaveChanges应用隔离级别为ReadCommitted的事务。如果必须在一个事务中应用多个SaveChanges,则显式地应用Transactions。EF SaveChanges首先检查是否已经有事务,如果没有,那么它应用自己的事务。如果每个事务只有一个SaveChanges,那么就不需要应用transaction。