2017-12-08 3 views
0

나는 올바른 방향으로 향하고 있다고 생각하지만 anyones 입력을 원합니다. 여러 폴더에서 파일을 검색하고 내 로컬 디렉토리와 일치하도록 미러링 된 FTP 서버의 각 해당 폴더에있는 파일을 업로드해야하는 콘솔 앱에서 작업하고 있습니다. Rebex와 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); 
      } 

내 질문은 : 내 로컬 디렉토리에 각 폴더를 읽어이 코드는 sftpTargetFolder에 업로드 할 수 있습니까? (sourceFilePath 및 sftpTargetFolder는 현재 App.Config에 정의되어 있습니다.) 이렇게하는 것이 최선의 방법일까요? 업로드하는 동안 오류를 잡으려면 어떻게해야합니까? 모든 입력이 크게 감사드립니다! 고맙습니다.

+0

SFTP는 FTP가 아닙니다 (물론 어떤 이름도 사용할 수 있습니다). 실험을 할 수 없습니까? –

+0

당신이 옳습니다, 사과드립니다. 우리는 SFTP 서버를 사용하고 있습니다. 그러나 업로드 기능이 여전히 동일하지 않습니까? 나는 SFTP가 현재 하루 종일 사용되고 있기 때문에 아직 실험을 할 수 없다. 테스트는 월요일까지 기다려야 할 것입니다. 그렇기 때문에 오늘 제가 시간이있는 동안 메신저 코드를 확인하는 것입니다. – Csharpnoob

답변

1

솔루션을 찾은 것 같아요. 테스트에서 작동하는 것 같습니다. 원한다면 가져 가라.

  //Upload local files to FTP server 

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