我们正在努力守旧派客户端服务器应用程序转换出与同步,并使用所有的微软技术(我们是一个总的.Net和SQLServer店)的离线支持N层应用程序。我们希望把重点放在pluming编写业务逻辑,而不是花时间,所以我们要尽可能多地使用现有的Microsoft pluming技术成为可能。

到目前为止,我们决定使用SQL Server精简版采用的WinForm / WPF胖客户端,服务器上的SQL Server 2008,Microsoft同步框架客户SQL数据库服务器和SQL数据库之间做同步。到目前为止一切顺利。

故障之际,当我们试图实现“N层”的一部分。我们目前的应用是相当SOA。每一个数据访问呼叫通网络服务来完成。所以很自然的,我们正在考虑使用ADO.Net数据服务。然后它来了个惊喜给我们,有一些所谓的ADO.Net数据服务在线(离线道夫),这让我们能够通过Web服务,支持同步数据访问调用,甚至支持离线。突然,我们开始相信天上真的是地球上一个地方。

然后我们昨天队友谁负责的“脱机道夫”的研究告诉我们,“道夫离线死”的基础上的博客文章(的 http://blogs.msdn.com/astoriateam/archive/2009/03/07 /announcing-project-codename-astoria-offline-alpha-preview.aspx )。我们怀疑他是在裂缝,但不想向他挑战。事实是,道夫脱机仍处于阿尔法前模式,我们需要一个生产方案。

所以比Astroia离线其他

,还有没有其他类似的解决方案,使我们能够使用微软的同步框架中的N层设置,还支持离线模式?

有帮助吗?

解决方案

如果你正在考虑ADO.NEt数据服务,那么你可能会发现,ADO.NET同步服务是一个很好的适合你。根据您要创建的塞纳里奥。交替远程数据访问可配合更好。

您可能要选择同步服务: 1.支持解决冲突。 在服务器上2.Change跟踪以及使得仅差异数据交换的客户端。 3.Peer to Peer的同步的同步框架即将V2。 4.Sync与于SQL Server等数据库。 5.Best适合于台式机或笔记本上运行SSCE。

RDA可以提供你,如果更好的性能: 1.您的主键,而不是使用标识列的GUID。 所以你不需要解决冲突2.用户不会覆盖彼此的数据。的“在最后胜利”的规则为你工作。 3.当你想索引推下来,你不关心,如果您的本地SSCE数据库已应用参照完整性约束。 4.You想换行,使所有应用更改,或者都不是您上传到SQL Server事务中的变化。 5.Change在客户端上的跟踪是不够好,重新下载更新的服务器表不会需要太长时间。 6.You开发商不介意写一些同步码。 7.Be能够通过IIS来对SQL Server直接执行SQL和存储过程。 8.You're下载只读数据。

如果你需要什么更多的,就骂。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top