2013-12-17 2 views
-4

C#에서 디렉토리를 삭제할 때 오류 처리 :I에 의해 디렉토리를 삭제하려고했습니다

dir1.Delete(true); 

하나의 파일이 너무 예외가 occoured 그 디렉토리에서 열려 있지만 디렉토리에있는 모든 파일도 삭제됩니다.

예외가 발생하면 디렉토리의 파일은 동일하게 유지되어야합니다.

+0

이 특정 문제에 제목을 업데이트하시기 바랍니다 .. http://meta.stackexchange.com/questions/10647/how-do-i-write-a-good-title –

+2

임시 디렉토리를 만들고 그 디렉토리로 파일을 이동할 수 있습니다. 파일이 열려 있으면 이동할 수 없으며 오류가 발생하지만 파일이 남아 있으므로 다시 이동할 수 있습니다. 모두 잘되면 새 디렉토리를 삭제할 수 있습니다. –

답변

1

사용 Transactionscope class

try 
{ 
    using (TransactionScope scope = new TransactionScope()) 
    { 
     dir1.Delete(true); 
     scope.Complete(); 
    } 
} 
catch(Exception e) 
{ 
    //deleteion failed 
} 
관련 문제