2011-06-03 36 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