带SQL 2005的Microsoft Sync Framework?可能吗?似乎暗示OOTB提供者使用SQL2008功能。 我正在寻找一些关于同步项目的快速获胜。 客户端应用程序将在几天内脱机。 将有一个中央服务器,必须是SQL Server 2005. 我可以使用.net 3.5。智能客户端应用程序的同步框架注意事项
基本上,客户端应用程序可以在一周内脱机。当它恢复在线时,它需要同步它的数据。但好处是数据只需要推送到服务器。同步回客户端的东西只是客户端永远不会改变的查找数据。所以这意味着我不关心同步冲突。
为了简化你的情况,这个智能客户端下线,用户调查一些观察数据。他们将数据输入到系统中。笔记本电脑重新连接到网络时,它会将所有数据同步到服务器。还有其他客户也在做同样的事情,但没有人会触及彼此的数据。然后在服务器上有一些报告查看推送到服务器的数据。这也需要使用ClickOnce。
我最大的担忧是客户端处于脱机状态时存在临时版本。此版本可能需要在数据库中添加一个新字段,并在调查中填写一个新字段。 显然,新字段将为空,因为我们无法更新旧数据,所以可以设置为假设。但是当客户端连接并且它的本地数据模式和服务器模式不匹配时,同步框架能够处理这个问题吗?数据被推送到服务器后,它将在本地丢弃。
希望我的问题有道理。
谢谢,欣赏反馈。另外,我发现ClickOnce会自动更新您的架构,无论是否使用同步框架。在我的情况下,我只在中央服务器上添加新的空字段,所以这个作品可以对我很好用 – DarkwingDuck 2009-07-28 11:12:53
ClickOnce如何结束自动更新数据库?我还没有看到这种情况,我非常感兴趣。 – 2009-07-28 19:01:33
因此,我发现ClickOnce只会将一些更改安全地部署到您的紧凑型数据库。例如,删除一列工作正常。但是,添加列实际上会导致所有本地数据被删除。所以我做的是在'同步'过程中,我让应用程序发布其数据,然后调用System.Deployment.CurrentDeployment类,该类有静态方法来更新部署。这对我来说很有帮助。但是,如果您使用WCF作为数据库的代理(这是一个支持的Sync框架方案),那么它可能无法很好地工作,因为您需要对合同进行版本化。 – DarkwingDuck 2009-08-03 09:49:56