Как передать объект потока памяти через библиотеку 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 ответ
Использование SftpClient.UploadFile
вместо ScpClient.Upload
,
Если это не поможет, убедитесь, что ваш брандмауэр настроен правильно. Очень полезно использовать инструмент, такой как WireShark, для мониторинга связи в случае, если есть какая-то странная ошибка (она также позволяет вам легко видеть ошибки аутентификации и т. Д.).