2011-06-03 48 views
2

是否有一個.NET庫,我可以用來同步文件夾到S3?我對完整的應用程序或命令行工具不感興趣,只是API。我需要直接從我自己的應用程序中使用它。同步文件夾到S3 - C#庫

如果沒有,有沒有人自己寫,如果是的話,你可以分享一些關鍵的考慮,當寫一個?有什麼特別的我需要留意?

順便說一下,我將使用它來進行備份,這樣我就不必每次壓縮整個文件夾並將zip文件上傳到S3。我希望以這種方式進行操作對於非常大的文件夾(類似於SyncBack)需要較短的時間。

謝謝。

+0

@Ralph Stevens我使用Amazon .NET Library將文件直接放置到S3上,它是一個超級簡單的庫,您也可以從NuGet中獲取它。 – balexandre 2011-06-03 16:48:52

+0

我目前這樣做。我希望能夠同步而不是上傳整個目錄。在我對以下user608576的回覆中查看我的同步定義。 – stepanian 2011-06-03 16:53:46

+0

但是,這將作爲一個服務或桌面應用程序,您選擇這兩個文件夾(S3 +桌面),它同步? – balexandre 2011-06-03 18:20:49

回答

1

您可以定期通過簡單的文件列表,並使用這些庫循環調用API http://weblogs.asp.net/israelio/archive/2004/06/23/162913.aspx OR 嘗試http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.aspx?您可以簡單地觀看OnDeleted,OnCreated和OnChanged事件。並相應地調用S3 API。

你甚至可以暫時壓縮它,而不是像這裏建議的那樣將它放在S3上。 How do I create 7-Zip archives with .NET?。並刪除一次它上傳到S3。

+0

我會研究這些。至於您發送的第一個鏈接,我使用的是Amazon .NET庫,該鏈接表示我們應該繼續使用,並且我不相信它具有同步功能。第二個鏈接似乎並不適用於S3,但我仍然會看看它。非常感謝您的幫助。 – stepanian 2011-06-03 16:46:07

+0

第二個鏈接有一種方法可以遍歷目錄中的所有文件,並且可以調用您的亞馬遜庫來上傳它。你可以找到很多庫來創建一個7zip文件。我有一個解決方案,並會看看我是否可以在幾個小時內發佈鏈接。檢查我編輯的答案。你可以在這裏看到一種創建7Zip的方式,而不是上傳整個目錄。 http://stackoverflow.com/questions/222030/how-do-i-create-7-zip-archives-with-net – 2011-06-03 16:48:44

+0

壓縮整個文件夾並上傳到S3是我現在正在做的,但我想移動到同步方法以使備份更快。 – stepanian 2011-06-03 16:50:42