2015-02-06 199 views
0

ASP.NET應用程序(在Windows服務器/ IIS 7上運行)必須將當前用戶上傳的大文件傳輸到外部SFTP服務器。由於文件的大小,這個想法是異步執行的。自動將新創建的文件上傳到SFTP服務器

這個想法是ASP.NET應用程序將上傳的文件存儲在Windows服務器的本地目錄中。當前用戶可以繼續他的工作。 Windows服務或Quartz作業(其他工具(*)/想法?)現在負責將文件傳輸到外部SFTP服務器。 (*)是否存在偵聽Windows目錄更改然後移動SFTP服務器上的文件(包括處理通信錯誤/重試)的工具?

如果沒有現有的解決方案,您是否有類似的要求?我們需要考慮什麼?由於與SFTP服務器的連接不太穩定,我們需要使用自動重試功能進行優化的錯誤處理。

回答

1

要注意.NET中本地目錄的更改,請使用 FileSystemWatcher class


如果你正在尋找一個開箱即用解決方案,使用WinSCP scriptingkeepuptodate command

WinSCP賦予腳本(例如watch.txt)的一個簡單的例子:

open sftp://username:[email protected]/ 
keepuptodate c:\local_folder_to_watch /remote_folder 
exit 

運行腳本等:

winscp.com /script=watch.txt 

雖然這隻有,如果上傳文件在遠程文件夾保存。

(我的WinSCP的作者)

+0

感謝您的巨大投入! – levis 2015-02-09 10:44:57

相關問題