我有点惊讶我还没有找到一个好的开源库来执行常见的网络任务。有一些非常好的商业库,但在开源项目中使用它们太贵了。
有人知道吗?
SSH.NET 库 - https://github.com/sshnet/SSH.NET
受 Sharp.SSH 启发,该库使用 .NET 4.0 完全重写,没有任何第三方依赖项,并尽可能利用并行性以实现最佳性能。
它是客户端 SSH 的可靠 C# 实现。
.Net 通过 System.Net.FtpWebRequest 提供了一些基本的 FTP 支持,但它充其量只是有点粗糙。我可以推荐的一个更好的替代方案是sourceforge 的 dotNET FTP 客户端。
我不知道您是否也在寻找电子邮件库,但这是我遇到的,所以我会提到它。
对于电子邮件的撰写和传递,基本的 .NET 库就可以了。System.Net.Mail.MailMessage 非常适合撰写电子邮件,而 System.Net.Mail.SmtpClient 适合通过 SMTP 发送电子邮件。
要使用 POP3 检索电子邮件并解析 MIME 消息,您将需要一个外部库。我一直在使用codeproject中的POP3 MIME Client ,没有任何问题。
我希望这会有所帮助!
edtFTPNet是免费的,但您必须购买他们的“专业”版本才能获得 SFTP(基于 SSH 的 FTP)和 FTPS(基于 SSL 的 FTP)。
虽然好久没更新了,但是免费的!我记得能够让 SharpSSH 毫不费力地运行,它支持端口转发(这是我当时正在寻找的!)。
SharpSSH http://www.tamirgal.com/home/dev.aspx?Item=SharpSsh
它不是一个单一的库,我不确定它们有多好,但我能够在这里找到几个指向开源库的链接:
http://csharp-source.net/open-source/network-clients
希望这可以帮助!杰夫
Lumisoft是开源的,拥有 FTP、DNS、IMAP、POP3 客户端等。但它不包括 SSH 和 SFTP。
实际上,我目前唯一使用 SFTP 的地方是使用putty捆绑的 psftp 实用程序,并从进程对象运行它。这可能不是很好,但它对我来说很可靠。
IIRC,FTP内置于.NET,(System.Net.FtpWebRequest),上次我看(几年前,诚然)我找不到任何免费的SSH / SFTP程序集。不过,这可能已经改变了。
我做了一些研究,发现了一个 C# 中的 SSH 实现,称为sharpSsh。它是 Java 的 Jsch(Java 安全通道)库的一个端口。我们在我的雇主这里使用 Jcsh,这很棒。我不能保证 C# 版本。