我正在尝试创建一个在线应用程序,它可以将运行在Android设备上的SQLite数据库与运行在服务器上的SQL同步。我们有一个在.NET和Android上运行的企业应用程序;我们需要同步他们的数据以保持一致性。它将是双向同步:应同步发生的任何数据更改(在客户端或数据库服务器上)。
我看到这可以通过许多方法实现,但对于这种情况,我建议使用Microsoft Sync Framework,因为它可以自动执行同步过程,也可以使用。我做了一些关于使用Sync框架的研究,并在Microsoft网站上找到了一些示例。但主要是他们正在进行离线同步:他们基本上在桌面上进行同步过程,其中源数据库和目标数据库在同一台机器上。但对于我的情况,情况并非如此。我在客户机上有SQLite,在服务器上有SQL,所以这里似乎需要一个在线同步过程。
我该如何实现这个目标?
答案 0 :(得分:0)
它们是示例应用程序,因此为简单起见,它们只是在本地指向源数据库和目标数据库。没有阻止你重新建立到远程服务器的数据库连接。
不是单独查看Sync Framework SDK,而是查看Sync Framework Toolkit。这是解决非MS客户端平台的问题。
答案 1 :(得分:0)
Microsoft Sync Services与ADO.NET数据提供程序可以连接的任何数据源一起使用。您将要看一下如何进行对等同步。 Microsoft Sync Framework的规则保存在SQL Server Compact Edition数据库中,并且需要驻留在SQL Server端,并且很可能您将通过网络连接(Internet)执行同步,因此需要设置一个Web服务器和网络服务以从Android端激活同步代理。制作代理和同步适配器将需要很多工作。幸运的您,进取的开发人员已经完成了这项工作:https://ampliapps.com/sqlite-sync/ 还有其他工具,例如我发布的工具,出于透明度的考虑,我对Ampliapps毫无兴趣,我只知道它们的产品。