2014-03-26 20 views
0

我上運行時如何通過Sharp SSH庫傳輸內存流對象?

 var stream = new MemoryStream(); 
     var writer = new StreamWriter(stream); 
     writer.WriteLine("There could by any text over here...."); 
     writer.Flush(); 
     stream.Position = 0; 

創建一個內存流現在我想通過SSH文庫這個內存流傳輸到遠程SFTP服務器,並希望將其保存SFTP服務器上。

我曾嘗試下面的代碼,但它不工作

 using (var scp = new ScpClient("HostName", "test", "test")) 
     { 
      scp.Connect(); 
      scp.Upload(stream, "/Files/Test/temp.txt"); 
      scp.Disconnect(); 
     } 

上算以下行永遠困沒有任何錯誤

scp.Upload(stream, "/Files/Test/temp.txt"); 

任何一個可以請幫助?

+1

你可以添加一些關於「不工作」的細節嗎?你有錯誤嗎? – Markus

+0

我已編輯說明。請閱讀最後幾行 – yrahman

回答

0

使用SftpClient.UploadFile而不是ScpClient.Upload

如果這沒有幫助,請確保您的防火牆設置正確。使用諸如WireShark之​​類的工具來監視通信以防萬一出現一些奇怪的錯誤(它還使您能夠輕鬆查看身份驗證錯誤等),這非常有幫助。