我刚刚进入Microsoft Sync Framework。使用SqlSyncAdapterBuilder和SqlServerChangeTracking将本地SQL CE 3.5数据库与远程SQL Server 2008同步很容易。
不幸的是,同步两个SQL CE 3.5数据库看起来并不那么容易...
文档很稀疏,我不知道如何开始这里。
我的具体情况如下:
将客户端与中央服务器同步应该没问题。在脱机客户端上同步多个应用程序是我考虑使用多个SQL CE数据库(一个作为服务器,一个用于每个应用程序实例)。在将客户端与服务器同步时以及在客户端同步多个应用程序时,我确实能够使用相同的冲突解决机制。在每个客户端上安装SQL Server 2008 Express都是不行的。
有没有人有同步两个SQL CE数据库的经验?
答案 0 :(得分:5)
Sync Framework 2.0允许SQL Server Compact Edition数据库之间的同步。
SqlCeSyncProvider用于 同步SQL Server Compact 数据库。
此提供程序可用于 与中央服务器同步但是 也具有同步的能力 与其他客户,不是 可以使用SqlCeClientSyncProvider。 这种能力使开发人员能够 针对新的方案,例如a 团队中的协作场景 人们之间需要同步 在没有的情况下彼此相对 连接到中央服务器。
答案 1 :(得分:1)
所有ado.net同步都需要客户端提供商和服务器提供商。
可悲的是,没有与当前版本的框架一起开箱即用的SqlCe 服务器 SyncProvider。这意味着您必须继承DBServerSyncProvider并包装SqlCe 客户端 SyncProvider。
有关如何使用sql express执行此操作的示例,请参阅this article。
这是相同的概念,只是你将包装SqlCeClientProvider。好消息是包装可能更容易。
祝你好运!