4

我有一个场景,我偶尔连接的客户端(WPF 应用程序、SQL Express DB)需要与中央 SQL Server 同步。客户端机器在现场使用,并且通常没有任何类型的连接。该计划是使用智能手机作为中间存储和转发设备。客户端会将本地更改推送到手机。然后断开电话,关闭笔记本电脑的电源,然后开车上路。开车时,手机将进入连接状态并将更改上传到中央办公室。

我需要知道我是否可以使用 Sync Framework 做到这一点。

该文档似乎表明同步编排想要访问源和目标。在这种情况下,我没有连接到目的地(中央服务器)。我怀疑我需要找到一种方法来在本地缓存目的地的知识,但我不确定这是否合适。

值得注意的是,客户端计算机将定期进行直接连接,但不是每天。

所以场景是:

  1. 客户端机器在星期一直接连接并进行完全同步。
  2. 周二,用户外出并使用应用程序,对 SQL Express 数据库生成更新/插入/删除。
  3. 用户将客户端计算机“同步”到他们的智能手机。(将文件保存到 SD 卡)
  4. 用户关闭客户端并沿路行驶。
  5. 智能手机进入连接并将文件上传到中央办公室。
  6. 中央办公室将上传文件中的数据“同步”到中央 SQL Server 数据库。
  7. 周三、周四、周五重复 2-6。
  8. 在接下来的星期一,用户再次直接连接以进行完全同步。

如何使用 Sync Framework 执行此操作?

如果我可以让智能手机每天从中心办公室下载一些东西(比如中心办公室的知识),这有帮助吗?如果客户端正在针对来自中央办公室的陈旧缓存知识编排同步会话,是否会造成伤害?

提前致谢!

4

1 回答 1

0

您不能使用 Sync Framework 或 Sync Framework Toolkit 开箱即用地执行此操作。数据库同步和文件同步是完全不同的。Sync Framework 使用提供者的概念来表示正在同步的存储库。例如,要处理文件,你有 FileSyncProvider,要使用 SQL Server/Express/Azure,你有 SqlSyncProvider 等等......但你不能使用 FileSyncProvider 与 SqlSyncProvider 同步......前者有效与文件,后者与数据库中的行。

与其让智能手机与本地机器同步,不如让本地机器和智能手机直接与中央服务器同步。

对于客户端计算机,您可以使用 Sync Framework SDK,并且最好使用 WCF 在 n 层设置中对其进行配置。

对于智能手机,您将不得不使用 Sync Framework Toolkit,因为您无法在手机上安装 Sync Framework SDK 本身。

这是使用 n 层设置的示例的链接:Database Sync:SQL Server and SQL Express N-Tier with WCF

这是 Sync Framework Toolkit 的链接:Microsoft Sync Framework Toolkit

于 2012-05-24T05:49:16.070 回答