0

私のアプリケーションは、サイズに関係なく、約15秒でFTPからファイルを削除しています。一方、FileZillaは、同じファイルを即座に削除します。

これが私のコードです:

FtpWebRequest request = (FtpWebRequest)WebRequest.Create(fileName);
request.Proxy = null;    
request.UsePassive = false;
request.KeepAlive = !request.UsePassive;
request.Method = WebRequestMethods.Ftp.DeleteFile;
request.Credentials = new NetworkCredential(usr, pwd);

FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Debug.Print("Delete status: {0}", response.StatusDescription);
response.Close();

非同期関数を使用してファイルを削除しようとしましたが、「この動詞タイプのコンテンツ本体を送信できません」というメッセージが表示されました。エラー。

これはもっと速くなることができますか、そしてなぜそんなに遅いのですか?
ありがとう!

4

1 に答える 1

0

どのオペレーティングシステムを実行していますか?私の唯一の考えは、Windowsの場合、FileZillaはファイルに削除のフラグを立てるだけで、実際には削除しない可能性があるということです。ファイルに削除のフラグが立てられると、新しいデータが入ってくるある時点で上書きされる可能性があります。「即時」削除は、すべてのフラグを設定することによって行われます。私が信じているあなたのコードはそうではありません。Windowsを使用している場合は、どんなサイズのファイルでも瞬時に削除できるため、これを確認できます。

于 2012-06-25T13:10:25.653 に答える