帶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