C# WebRequestMethods.Ftp.ListDirectory结果仅限于2000个条目

C# WebRequestMethods.Ftp.ListDirectory结果仅限于2000个条目,c#,ftp,ftpwebrequest,ftpwebresponse,C#,Ftp,Ftpwebrequest,Ftpwebresponse,将ListDirectory发送到FTP服务器,但仅返回FTP中的前2000个项目。添加SSL不会返回更多结果 我是否应该使用另一个库来获得完整的结果 ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(OnValidateCertificate); ServicePointManager.Expect100Continue = true; FtpWe

ListDirectory
发送到FTP服务器,但仅返回FTP中的前2000个项目。添加SSL不会返回更多结果

我是否应该使用另一个库来获得完整的结果

ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(OnValidateCertificate);
ServicePointManager.Expect100Continue = true;

FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://XXXX");
request.Method = WebRequestMethods.Ftp.ListDirectory;
request.Credentials = new NetworkCredential("User", "Password");
request.EnableSsl = true;

ServicePoint sp = request.ServicePoint;
Console.WriteLine("ServicePoint connections = {0}.", sp.ConnectionLimit);
sp.ConnectionLimit = 1;

using (var response = (FtpWebResponse)request.GetResponse())
{
    using (var stream = response.GetResponseStream())
    {
        using (var reader = new StreamReader(stream, true))
        {
            string line = reader.ReadLine();
            while (line != null)
            {
                ListFiles.Add(line);
                line = reader.ReadLine();
            }
        }
    }
}

这显然是服务器上的配置问题。请参阅以下文章:



基本上,这些文章建议要么更改服务器配置以允许您查看更多文件,要么将文件排序到更窄的目录中,以便您可以在任何给定时间更选择性地查看哪些文件。

这显然是服务器上的配置问题。请参阅以下文章:



基本上,这些文章建议要么更改服务器配置以允许您查看更多文件,要么将文件排序到更窄的目录中,这样您就可以在任何给定的时间更有选择地查看哪些文件。

这几乎不是客户端问题。可能是FTP服务器限制了列表。
您是否尝试使用独立(GUI)客户端


由于您评论说您具有对服务器的SSH访问权限,请尝试使用SFTP协议而不是FTP。SFTP服务器很可能没有限制。

这几乎不是客户端问题。可能是FTP服务器限制了列表。
您是否尝试使用独立(GUI)客户端


由于您评论说您具有对服务器的SSH访问权限,请尝试使用SFTP协议而不是FTP。SFTP服务器可能没有限制。

这是服务器上的全局设置,托管服务无法更新。但是我可以使用ssh来获取列表。您可以更改目录结构,使单个目录中的文件少于2000个吗?这是托管服务无法更新的服务器上的全局设置。但是我可以用ssh来获取列表。你能改变你的目录结构,使每个目录中的文件少于2000个吗?