3

我正在對應用程序進行更改以使本地數據存儲不直接連接到數據庫服務器。客戶端應用程序將在服務器數據庫和本地數據存儲之間同步兩種方式的更改。我正在嘗試使用Microsoft Sync Framework實施同步解決方案。要清楚的是沒有服務器應用程序,只有數據庫服務器,但有多個客戶端。具有多個客戶端和服務器數據庫的Microsoft Sync Framework

我已經開始實現兩個實現FullEnumerationSimpleSyncProvider的類,一個名爲LocalSyncProvider,另一個名爲ServerSyncProvider。 LocalSyncProvider知道如何從本地數據存儲中枚舉,插入,更新和刪除項目,並且ServerSyncProvider知道如何枚舉,插入,更新和刪除數據庫服務器中的項目。它們各自使用提供的SqlMetadataStore並在客戶端的本地驅動器上存儲兩個元數據存儲(一個用於本地服務器,另一個用於服務器)。這意味着每個客戶端都將擁有自己的本地數據存儲元數據存儲和它自己的服務器數據庫元數據存儲。

這實際上是否工作,是否需要只存在一個服務器元數據存儲區,還是需要以不同的方式使用Sync Framework?

回答

0

我們正在使用類似的方法,它的工作原理與您所描述的相同。不同之處在於我們使用FileSyncProvider作爲客戶端,而FullEnumerationSimpleSyncProvider作爲服務器的實現來同步文件,而不是數據。但是我們沒有在服務器上運行的Sync Framework代碼,並且有兩個獨立的元數據文件,都存儲在客戶端上。

但是,我最近遇到了一個您可能想要知道的問題。看起來,如果客戶端上的元數據存儲被刪除,Sync Framework就不能重建元數據文件而不會被已經在服務器上的數據/文件混淆。

相關問題