你可以推荐C#免费FTP库(类)。
这个类必须要写得很好,并有不错的表现。
你可以推荐C#免费FTP库(类)。
这个类必须要写得很好,并有不错的表现。
您可以考虑FluentFTP ,以前称为System.Net.FtpClient 。
这是下发布的MIT许可证和可用上的NuGet(FluentFTP)。
你为什么不使用随.NET Framework中的库: http://msdn.microsoft.com/en-us/library/ms229718.aspx ?
编辑:2019年4月获https://stackoverflow.com/users/1527/这个答案不再有效。 其他答案由Microsoft认可。
它们是由微软设计谁不再建议他们应该使用:
我们不建议您使用新的发展的FtpWebRequest类。 欲了解更多信息和替代的FtpWebRequest,看到的WebRequest不应该在GitHub上使用。 ( https://docs.microsoft.com/en-us/dotnet/api/system.net.ftpwebrequest?view=netframework-4.7.2 )
该“的WebRequest不应该使用”依次指向页面,这个问题是图书馆的最终名单!
edtFTPnet是一个免费,快速,开源的FTP库.NET,C#编写的。
我喜欢亚历克斯FTPS客户端是由微软的MVP名亚历克斯皮洛蒂写入。 这是你可以在控制台应用程序,Windows窗体,PowerShell中,ASP.NET使用(在任何.NET语言),一个C#库。 如果你有一个多线程的应用程序,你必须将库配置为syncronously运行,但整体良好的客户端,将最有可能获得你所需要的。
你可以使用在那些CodePlex上或http://www.enterprisedt.com/general/press/20060818.html
我刚刚发布了一篇文章说既是一个FTP客户端类和FTP的用户控制。
他们是简单,不是非常快,但非常容易使用,并包括所有的源代码。 只需拖放用户控件到窗体,以允许用户从应用程序浏览FTP目录。
经过大量的在同一个问题的调查,我发现这一个非常方便: https://github.com/flagbug/FlagFtp
例如(尝试用标准的.NET“库”这样做 - 这将是一个真正的痛苦) - >递归retreving的FTP服务器上的所有文件:
public IEnumerable<FtpFileInfo> GetFiles(string server, string user, string password)
{
var credentials = new NetworkCredential(user, password);
var baseUri = new Uri("ftp://" + server + "/");
var files = new List<FtpFileInfo>();
AddFilesFromSubdirectory(files, baseUri, credentials);
return files;
}
private void AddFilesFromSubdirectory(List<FtpFileInfo> files, Uri uri, NetworkCredential credentials)
{
var client = new FtpClient(credentials);
var lookedUpFiles = client.GetFiles(uri);
files.AddRange(lookedUpFiles);
foreach (var subDirectory in client.GetDirectories(uri))
{
AddFilesFromSubdirectory(files, subDirectory.Uri, credentials);
}
}