Windows Mobile Synch Services是否可以使用业务层

时间:2010-05-13 08:40:21

标签: windows-mobile synchronization business-logic

我们正在构建一个需要更新基于服务器的公司数据库的Win Mobile 6仓库应用程序。

我们的应用服务器上有一个C#业务层,我们真的很喜欢我们的仓库应用程序。

我们也喜欢MS Synch Services。

有没有办法将两者结合起来,即我们可以使用同步服务,但让他们通过我们的业务层吗?有没有人这样做,并得到一个我可以遵循的例子?这种情况是否有最佳实践?

谢谢,

安迪

1 个答案:

答案 0 :(得分:0)

通过覆盖应用更改来实现目标: 服务器端(即PFS.WarehouseHandheld.SyncServiceLibrary) 1.在SyncServiceLibrary中,创建一个新的SyncContract实现。

  1. 新的SyncContract继承了生成的SyncService(& so实现了IXXXSyncService WCF接口。)

  2. 在这个新实现中,覆盖ApplyChanges以拦截被推送到服务器的更改,循环通过传递的param dataSet中详述的更改,确定从dataSet.Tables [i] .TableName。

    <更改的表。 / LI>
  3. 从表格中的每一行中水合适当的DTO&amp;通过适当的BLL控制器推送它。

  4. 在您图书馆的app.config中,插入另一个system.serviceModel / services / service。这应该与生成的合同实现的原始服务节点相同,但名称不同。

  5. 客户端(即CF / windows mobile) 1.为您的新服务添加Web引用(我们的名称为PFSDatastore2CacheWebRefBLL)&amp;按照演练中的指示进行破解,以删除重复生成的代码。

    1. 在您的同步调用代码中,请参阅新的BLL驱动服务(即_webSvcProxy = new PFSDatastore2SyncServiceBLL();),并像以前一样。
    2. http://handhelddeveloper.wordpress.com/2010/05/18/sync-thru-your-business-layer/

      的详细信息