有没有使用rsync的.NET API?

我需要在.NET应用程序中使用文件同步function。 我可以使用rsync吗? 有没有可用的API?

您可以使用DeltaCopy附带的源代码,它是原始RSync的“Windows友好”包装器。
源代码是用c ++编写的,所以它不完全是.Net,但你可以编写托管的C ++包装器并使用它们。
我知道,这不是一个直接的解决方案,但它可能会有所帮助。 (换句话说,HTH)

在github上有一个RSync的C#实现,其中包含一些最近的提交:

http://github.com/MatthewSteeples/rsync.net

DeltaCopy只是rsync可执行文件的包装器。 但是,librsync本身可以在Windows以及UNIX和GNU / Linux上构建(参见他们的README和这个EE线程 )。 因此,这是另一个需要考虑的选择。 您仍然需要某种非托管管理的互操作。

如果您正在寻找一些简单的自动化,您可以编写一个微小的包装器,通过System.Diagnostic.Process调用RSync。

我确实读到了某个地方大约在2006年用C#创建了一个rsync端口,但说实话,我不会考虑使用它,因为它远非流行而且不可能找到。