0

アプリケーションを net 3.5 から 4.0 にアップグレードしました

ftp を使用してファイルの読み取りと転送を行います。私が接続するサーバーの1つを除いて、すべてが素晴らしい. あるディレクトリに戻って別のディレクトリに移動する必要があるため、そのサーバーはそもそも奇妙です。

「ftp.server.com」は実際には ftp.server.com/up に移動し、ftp.server.com/out から読み取る必要があります

この URL を使用してファイルリストを取得します。

ftp://ftp.server.com/%2fout

Web リクエストは次のように作成されます。

var request = (FtpWebRequest) WebRequest.Create("ftp://ftp.server.com/%2fout");

ファイルリストを取得します-問題ありません。その方法はディレクトリに接続するために機能しますが、ファイルの1つを読み取ろうとするとエラーが発生します。

そのリクエストを次のように作成します。

 var request = (FtpWebRequest)WebRequest.Create("ftp://ftp.server.com/%2fout/" + filename);

リクエストのURIを次のように記録しました:

ftp://ftp.server.com//out/ORDER25260.xml_XL1014254ORDER25260_response.xml

私はこのスタックトレースを取得します:

The remote server returned an error: (550) File unavailable (e.g., file not found, no access).   at System.Net.FtpWebRequest.CheckError()
   at System.Net.FtpWebRequest.SyncRequestCallback(Object obj)
   at System.IO.Stream.Close()
   at System.Net.ConnectionPool.Destroy(PooledStream pooledStream)
   at System.Net.ConnectionPool.PutConnection(PooledStream pooledStream, Object owningObject, Int32 creationTimeout, Boolean canReuse)
   at System.Net.FtpWebRequest.FinishRequestStage(RequestStage stage)
   at System.Net.FtpWebRequest.SyncRequestCallback(Object obj)
   at System.Net.CommandStream.Abort(Exception e)
   at System.Net.CommandStream.CheckContinuePipeline()
   at System.Net.FtpDataStream.System.Net.ICloseEx.CloseEx(CloseExState closeState)
   at System.Net.FtpDataStream.Dispose(Boolean disposing)
   at System.IO.Stream.Close()
   at CustomModules.CustomModules.SupplierFunctions.FtpMethods.GetFile(SynsamSupplierSetting setting, String filename, Boolean deleteAfterLoad) in D:\WORK\dynamicweb\Source\CustomModules\SupplierFunctions\FtpMethods.cs:line 295

同じ資格情報を使用して FileZilla 経由でダウンロードしても問題ありません

何か案が?

前もって感謝します

4

1 に答える 1

0

このスレッドの情報を使用してこれを解決しました:

FtpWebRequestクラスファイルのアップロードで550ファイルを使用できないエラーが発生しました。FileZillaで正常に動作します

ユーザーSteveCalPolyは次のように書いています。

どうやらCWDコマンドの動作は.NET3.5から4.0への移行で変更されました。

最初に、このリンクのメソッドを呼び出す必要があります。

http://support.microsoft.com/kb/2134299

質問はアップロードに関連しているので、最初のグーグルで答えを逃しました

于 2012-09-17T11:41:44.470 に答える