別のプロセスで開かれているファイルを呼び出しFile.Delete(file_path)
ている間、試行はアクセスできないエラーで失敗しますが、(試行が行われた場所から) アプリを終了すると、ファイルは自動的に削除されます。試行後File.Delete
、他の操作でパスにアクセスできなくなります。
削除に失敗してアプリからパスにアクセスできるようにするか、アプリの終了時ではなく、ファイルを完全に削除する必要があります。
さて、私のコードはこれです:
private bool DeleteFilesAsync(string FileToDelete)
{
try
{
//Set file's attribute to normal if it is ReadOnly file
File.SetAttributes(FileToDelete, FileAttributes.Normal);
File.Delete(FileToDelete);
//Some bussiness logic to update file's status in database
return true;
}
catch (Exception ex)
{
//log the error
return false;
}
}
ここで何か問題がありますか?