2017-08-31 1 views
-1

Je suis en train de télécharger le fichier en utilisant SSH.NET à partir d'un serveur et son uploadé avec succès, mais quand le client sftp déconnecté les fichiers sont supprimés automatiquement du serveur SFTP. J'utilise le code suivantSFTP fichier téléchargé supprimé automatiquement à partir d'un serveur

public void Upload(string filePath) 
    { 
     try 
     { 

      using (var client = new SftpClient(host, port, username, password)) 
      { 
       client.Connect(); 

       client.ChangeDirectory(workingdirectory); 

       using (var fileStream = new FileStream(uploadfile, FileMode.Open)) 
       { 
        client.BufferSize = 4 * 1024; 
        client.UploadFile(fileStream, Path.GetFileName(uploadfile)); 
       }     
      } 
     } 
     catch (Exception ex) 
     { 
      throw ex; 
     } 
    } 
+0

Etes-vous sûr? Un service les ramasse-t-il? – john

+0

Aucun service ne sélectionne le fichier. Lorsque je déplace le fichier manuellement sur le serveur FTP, il reste là et quand j'utilise le code C# pour télécharger le fichier, il est supprimé après que le client sftp se soit déconnecté. –

+0

Choses à rechercher/essayer: 1) êtes-vous 100% positif que vous utilisez le même hôte, port, nom d'utilisateur et mot de passe? 2) Je suppose que c'est SSH.NET alors essayez d'ajouter 'client.Disconnect()' après le téléchargement. 3) essayez de télécharger le fichier sur la même connexion (avant de terminer le bloc 'using') – Jcl

Répondre

0

Le téléchargement peut être incomplet et est effacé après la fermeture de la connexion. Vous ne connaissez pas la bibliothèque que vous utilisez, mais il y a peut-être un appel Flush() manquant?

C.

[Ne hésitez pas à supprimer ce, ne peut pas écrire des commentaires]