As far as I know, you can use Transactional File Manager
which is a .NET API that supports including file system operations such as file copy, move, delete, append, etc. in a transaction. However, this API is in fact a wrapper around Transactional NTFS
If this did not solve your problem then please leave a comment and I will assist you by improving my solution until your problem gets solved.