2017-01-04 1004 views
1

FluentFTPをアプリケーションに実装していますが、FTPサーバー上のフォルダの内容を一覧表示することはできません。
私はFilezillaのようなFTPアプリケーションを使用する場合、私は私のユーザーディレクトリに2つのフォルダがあることをはっきりと見ることができます。FluentFTPを使用してフォルダを一覧表示する方法

enter image description here

アウトフォルダがいくつかのファイルが含まれていますが、私はFluentFTPいつも私を使用してリストを取得するときOutフォルダの内容ではなく、これらの2つのフォルダを取得します。

これは私が変数で、remotedirのためにこれらの組み合わせを試してみました、私は

FtpClient client = new FtpClient(); 
client.Host = _ftpDefinition.Host; 
client.Port = _ftpDefinition.Port; 
client.Credentials = new NetworkCredential(_ftpDefinition.UserName, _ftpDefinition.PassWord); 
client.Connect(); 

foreach (FtpListItem item in ftpClient.GetListing(remoteDir)) 
{ 
    if (item.Type == FtpFileSystemObjectType.File) 
    { 
     _remoteFiles.Add(item.Name); // add the filename to a List<string> 
    } 
} 

を使用していますコードです:それらの

Out 
/Out 
Out/ 
/Out/ 

どれも作業していない、GetListingはいつもの代わりに2つのフォルダをretuns Outフォルダーの内容

私は間違っていますか?

+0

として

あなたはoutfolderするディレクトリを変更することができませんか? – BugFinder

+0

良いアイデア、FluentFTPでどうすればいいですか? – GuidoG

+0

それ以外の場合は、_remoteFiles.Addを実行します。チャンスはあなたの現在のディレクトリに入れます。 – BugFinder

答えて

1

their docs

によると、あなたは

GetWorkingDirectory()を使用することができるはず - 現在の作業ディレクトリのフルパスを取得します。

SetWorkingDirectory() - 現在の作業ディレクトリのフルパスを設定します。このような

FtpClient.SetWorkingDirectory("/Out");

+0

これは動作しているようですが、GetListing()が同じ/ Outで動作しない理由を考えることができますか? – GuidoG

+0

これまでfluentftpを使用したことはありません:p申し訳ありません。それは大文字と小文字の区別があり、大文字小文字の小文字で表示されているにもかかわらず、IDは生のftpクライアント(filezillaではない)とサーバーの終わりで見たいものの1つになります – BugFinder

+0

何らかの理由で、この解決策が機能しなくなりました。 GetWorkingDirectoryをSetWorkingDirectoryの後に実行すると、前と同じように/ Outが返されますが、なんらかの理由でGetListing()はファイルがある場合でも常に何も返しません。私はFluentFTPが結局それほど良くないと思っています。もう一度別の図書館を探し始める必要があります – GuidoG

関連する問題