当我们有超过1个文件时删除的问题

时间:2010-01-07 10:52:59

标签: asp.net

我有10个文件。我想删除它们,但这里的条件是   因为我删除文件1到文件5 .let说在file6我有一个例外然后在那种情况下我应该恢复所有删除的文件

只有当我们尝试删除时,如果在任何文件中没有发生异常,我应该删除文件

像回滚转换一样,我们在DB中做了什么。文件中是否有任何属性我们可以实现这个概念

anyhelp会非常感谢你

3 个答案:

答案 0 :(得分:2)

您可以分两个阶段完成此操作。首先,重命名所有文件(或更多文件)。然后,一旦您对所有文件都可删除感到满意,您就可以去删除它们。如果没有,那么你将它们重命名(或将它们移回)到原始状态。

实际删除也可以作为批处理作业发生。

答案 1 :(得分:1)

如果事务性NTFS不适合您,您可以采取将所有文件复制到临时位置的路由,然后再删除...然后捕获任何异常。如果存在异常,请检查每个文件是否存在,如果不是,则只复制临时位置中缺少的任何文件。

如果文件不是太大,您还可以考虑将文件存储在关系数据库中,在那里您可以获得这种事务支持等等。

答案 2 :(得分:0)

您可以查看Transactional NTFS,它可以满足您的需求。我自己没试过,但这里有一个链接,可以在.net

中使用它

http://code.msdn.microsoft.com/txfmanaged