我正在使用.net控制台应用程序中的Renci.ssh库从安全的FTP(SFTP)下载内容。我要做的就是使用Renci.ssh库的SFTPClient连接并下载内容,一旦下载完成,我尝试使用相同的SFTPClient实例断开连接,并且应用程序的行为有点奇怪。有时它不会引发任何错误,有时会引发“客户端未连接”或“连接到非Socket的连接时出错”。对于为什么应用程序表现异常,我一无所知。
代码:
try
{
ConnectionInfo conInfo = new PasswordConnectionInfo("********.com", username, password);
using (SftpClient client=new SftpClient(conInfo))
{
client.Connect();
Console.WriteLine("Connection before sleep: " + client.IsConnected);
Thread.Sleep(10 * 1000);
Console.WriteLine("Connection after sleep: " + client.IsConnected);
client.Disconnect();
}
}
catch (Exception ex)
{
}
StackTrace:
在System.Net.Sockets.Socket.Poll(Int32微秒,SelectMode模式)在Renci.SshNet.Session.SendMessage(消息消息)在Renci.SshNet.Session.SendMessage(消息消息)在Renci.SshNet.Session。 C:\ Users ********* \ TestSFTP \ TestSFTP \ Program中的TestSFTP.Program.Main(String [] args)处的Renci.SshNet.BaseClient.Disconnect()处的SendDisconnect(DisconnectReason reasonCode,String message) .cs:第26行
您在这里找到问题了吗?我遇到了同样的问题。