Click here to Skip to main content
15,887,596 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
Hi,

I want to create a service in .NET to transfer files between SFTP servers.

What will be the best way to choose as I know WCF doesn't support SFTP, does SFTP is supported by .NET Core.

Thanks & Regards
Supratik De

What I have tried:

I am trying to explore the best way to choose. I need the high level answer like what I need to choose.
Posted
Comments
David_Wimbley 12-Feb-18 16:12pm    
Can you clarify that all you want to do is download files via SFTP from Server A and upload those same files to Server B. Your question is phrased as though you want to create your own FTP server which, gonna be honest, is pointless.
Supratik De 12-Feb-18 16:24pm    
Hi David,

I am rephrasing my requirement -
I have two SFTP servers as inbox and outbox. File will come from external application to SFTP-Inbox and I need to transfer the files through a service and using parallel programming. I will expose 4 different service who will continuously process the incoming files parallel. I mean services will not wait for one file process to be completed. What is the best way to perform the task. Does through WCF I can perform the task. And does .NET core supports SFTP endpoints?

Regards
Supratik De
Richard Deeming 13-Feb-18 10:34am    
Nothing supports SFTP, or any other variant of FTP, as a service endpoint. The FTP family of protocols are designed for transferring files from one computer to another, not for invoking services.

If you want to process the files in real-time, you'll need to install a service on the source server, using something like the FileSystemWatcher component to monitor the source folder for new files. You'll then need a library like FluentFTP[^] to connect to the destination server and transfer the files over SFTP.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900