I want to create a C# application in which copy some files in two diffrent folders(already contains older version files) and also run sql scripts. During whole process if any exception generate i need to rollback all the changes.
For sql scripts, transation can be used but how implement files copying process with rollback?