C#学习教程:TransactionScope与C#中的文件分享


TransactionScope与C#中的文件

我一直在使用TransactionScope来处理数据库,感觉还不错。 我正在寻找的是以下内容:

using(var scope=new TransactionScope()) { // Do something with a few files... scope.Complete(); } 

但显然这不起作用 – 如果有20个文件,并且第9个文件发生exception,所有之前的8个仍然保持更改而其余的保持不变 – 不执行回滚。 那么,为文件实现类似范围的行为的最佳方法是什么?

我希望有一个简单的答案,但如果没有,你能给我一些指示,或者指点我的相关文章吗?

您正在寻找由Windows Vista引入的Transactional NTFS 。

这是一个托管包装器 。

您可以尝试Codeplex和NuGet上提供的.NET Transactional File Manager库。 它支持任何文件系统,并不是Transactional NTFS的包装器。

从项目描述:

事务性文件管理器是一种.NET API,支持在事务中包括文件系统操作,如文件复制,移动,删除,追加等。 它是System.Transaction.IEnlistmentNotification的一个实现(与System.Transactions.TransactionScope一起使用)。

上述就是C#学习教程:TransactionScope与C#中的文件分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—猴子技术宅(www.ssfiction.com)

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/ckf/1269792.html

(0)
上一篇 1天前
下一篇 1天前

精彩推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注