C# 如何使用FluentFTP列出文件夹

C# 如何使用FluentFTP列出文件夹,c#,ftp,fluentftp,C#,Ftp,Fluentftp,我正在应用程序中实现FluentFTP,但无法列出FTP服务器上文件夹的内容。 当我使用像FileZilla这样的ftp应用程序时,我可以清楚地看到在我的用户目录中有两个文件夹: Out文件夹包含一些文件,但是当我使用FluentFTP检索列表时,我总是得到这两个文件夹,而不是Out文件夹的内容 这是我正在使用的代码 FtpClient client = new FtpClient(); client.Host = _ftpDefinition.Host; client.Port = _ftp

我正在应用程序中实现FluentFTP,但无法列出FTP服务器上文件夹的内容。
当我使用像FileZilla这样的ftp应用程序时,我可以清楚地看到在我的用户目录中有两个文件夹:

Out文件夹包含一些文件,但是当我使用FluentFTP检索列表时,我总是得到这两个文件夹,而不是Out文件夹的内容

这是我正在使用的代码

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>
    }
}
它们都不工作,GetListing总是重新运行这两个文件夹,而不是Out文件夹的内容

我做错了什么?

根据

你应该能够使用

GetWorkingDirectory()-获取当前工作目录的完整路径

SetWorkingDirectory()-设置当前工作目录的完整路径

比如


FtpClient.SetWorkingDirectory(“/Out”)

您不能将目录更改为outfolder吗?好主意,我如何使用FluentFTP执行此操作?否则,当您执行_remoteFiles.Add。。很可能它会把它放在您当前的目录中,而不是您想要的位置。听起来像是FluentFTP错误。我有。顺便说一句,Guido,如果你能提供更多信息,我相信Robin会很感激的。这似乎很有效,你能想出GetListing()不能与相同的/Out一起工作的原因吗?从来没有使用过fluentftp:p抱歉。它可能区分大小写,尽管显示为大写,但它的小写。。这将是我希望在原始ftp客户端(而不是filezilla)和服务器端看到的内容之一,它可能会告诉您更多原因(服务器会有发送内容的日志),因为某种原因,此解决方案停止工作。当我在SetWorkingDirectory之后执行GetWorkingDirectory时,它会像以前一样返回/输出,但由于某些原因,GetListing()现在总是不重新运行任何内容,即使存在文件。我开始认为FluentFTP毕竟不是那么好,我需要重新开始寻找另一个库。这听起来很诡异。是否允许在out文件夹中列出?有没有像filezilla默认打开的被动ftp这样的设置?我切换到另一个库EDTFTPree,这个库从一开始就很有魅力。谢谢你的时间和努力
Out
/Out
Out/
/Out/