C# 使用ReBex将不同的文件上载到FTP服务器?

C# 使用ReBex将不同的文件上载到FTP服务器?,c#,console-application,sftp,rebex,C#,Console Application,Sftp,Rebex,我想我正朝着正确的方向前进,但我希望任何人都能提供意见。 我正在开发一个控制台应用程序,它应该在多个文件夹中查找文件,然后将找到的任何文件上载到FTP服务器上的每个相应文件夹(该文件夹被镜像以匹配我的本地目录)。我对一般使用Rebex和FTP上传还不熟悉。到目前为止,我的代码如下所示: //Connect to SFTP server Sftp ftp = new Sftp(); ftp.Connect(ftpServer

我想我正朝着正确的方向前进,但我希望任何人都能提供意见。 我正在开发一个控制台应用程序,它应该在多个文件夹中查找文件,然后将找到的任何文件上载到FTP服务器上的每个相应文件夹(该文件夹被镜像以匹配我的本地目录)。我对一般使用Rebex和FTP上传还不熟悉。到目前为止,我的代码如下所示:

            //Connect to SFTP server 
            Sftp ftp = new Sftp();
            ftp.Connect(ftpServerURL);
            ftp.Login(ftpUserName, ftpPassword);

            //Upload local files to SFTP Server
            if (ftp.IsConnected == true)
            {
                ftp.PutFile(sourceFilePath, sftpTargetFolder);
            }

我的问题是:这段代码会读取我本地目录中的每个文件夹并将它们上载到SFTPTarget文件夹吗?(sourceFilePath和sftpTargetFolder当前在App.Config中定义)。这是最好的方法吗?在上传过程中如何捕捉错误?非常感谢您的任何意见!!!多谢各位

我想我找到了解决方案,它似乎在测试中起作用。如果你愿意,就拿去吧

            //Upload local files to FTP server 

            ftp.Upload(sourceFilePath, "/", Rebex.IO.TraversalMode.Recursive, Rebex.IO.TransferMethod.Copy, Rebex.IO.ActionOnExistingFiles.OverwriteOlder);
            ftp.Disconnect();

SFTP不是FTP(当然,您可以使用任何名称)。你不能做个实验吗?对不起,你是对的。我们使用的是SFTP服务器。然而,上传功能是否仍然相同?我现在还不能做实验,因为SFTP目前正在全天使用。测试要等到星期一,这就是为什么我今天在有时间的时候会重复检查代码。