Мне пришлось сделать 2 разных операции: сначала создайте файл Excel, а затем загрузите существующий файл и затем удалите его.
Использование библиотеки под названием WinSCP
Я не смог найти ни одной библиотеки, которая бы поддерживала шифрование 90-х годов, такое как неявный FTP через TLS и потоковый API одновременно. Таким образом, у меня не было возможности напрямую создать файл Excel на сервере, но временно создать его локально, чтобы скопировать и удалить его одновременно, это почти то же самое, что я получаю тот же результат. И вот решение для этого
try
{
// Setup session options
SessionOptions sessionOptions = new SessionOptions
{
Protocol = Protocol.Ftp,
HostName = @"xx.xx.x.x",
UserName = "xxxx",
Password = "xxxxxx",
PortNumber = xxxx,
FtpSecure = FtpSecure.Implicit, //Encryption protocol
GiveUpSecurityAndAcceptAnyTlsHostCertificate = true // Accepts any certificate
};
using (Session session = new Session())
{
// Connect
session.Open(sessionOptions);
// Upload files
TransferOptions transferOptions = new TransferOptions();
transferOptions.TransferMode = TransferMode.Binary;
TransferOperationResult transferResult;
// Copy's Existing file to Connected server and delets the old one.
// change by replace "true" with "false".
transferResult =
session.PutFiles(
ExistingPath, "/ScheduleJobs/" + RemotePath, true, transferOptions);
// Throw on any error
transferResult.Check();
// Print results
foreach (TransferEventArgs transfer in transferResult.Transfers)
{
Console.WriteLine("Upload of {0} succeeded", transfer.FileName);
Console.ReadLine();
}
}
}
catch (Exception e)
{
Console.WriteLine("Error: {0}", e);
}