SSH.NET不会捕获异常消息

时间:2018-10-26 21:49:11

标签: ssh.net cerberus

我们正在使用Cerberus FTP服务器。对于客户端,我正在使用SSH.NET库来连接服务器并上传文件。大部分时间我都可以连接文件并将文件上传到FTP服务器。

但是,当FTP服务器上不存在目标路径时,SSH.NET库将按预期引发异常。但是,Exception的Message属性为空。

var sftpClient = new SftpClient(host,username,password);
sftp.connect();
var destination = "SomeInvalidPath\myfile.txt"
using (var fs = new FileStream(sourceFilePath, FileMode.Open, FileAccess.Read))
{
      try
      {
         sftp.UploadFile(fs, destination);                        
      }
      catch (Exception ex)
      { 
         // ex.Message is empty ???
         Logger.Current.Error(ex, "Error while FTP");             
      }                
}

不确定是SSH.NET库问题还是FTP服务器是否需要将错误传播回客户端?

更新1

堆栈跟踪

  

”,位于Renci.SshNet.Sftp.SftpSession.RequestOpen(字符串路径,标志   标志,布尔值nullOnError)\ r \ n在   Renci.SshNet.SftpClient.InternalUploadFile(流输入,字符串路径,   标记标志,SftpUploadAsyncResult asyncResult,操作1 uploadCallback)\r\n at Renci.SshNet.SftpClient.UploadFile(Stream input, String path, Action 1 uploadCallback)\ r \ n位于XXXXXX

0 个答案:

没有答案