我有一個項目,除了用戶輸入的數據我得外部數據源:什麼是.NET中單向同步的可擴展解決方案?
- SQL服務器
- Web服務
在這兩種情況下,我沒有跟蹤變化,獲取所有數據,然後合併它就沒問題。外部數據不能在應用程序中編輯(僅供參考),因此這裏的合併意味着只是防止重複。
作爲一個開發者,我希望能夠來定義轉換規則,使它們是可擴展的,可測試的和可以重複使用的業務規則/邏輯。作爲管理員,我需要能夠定義同步計劃並輕鬆查看同步日誌/狀態。
是否有現成的解決方案來處理所有這些問題?
我有一個項目,除了用戶輸入的數據我得外部數據源:什麼是.NET中單向同步的可擴展解決方案?
在這兩種情況下,我沒有跟蹤變化,獲取所有數據,然後合併它就沒問題。外部數據不能在應用程序中編輯(僅供參考),因此這裏的合併意味着只是防止重複。
作爲一個開發者,我希望能夠來定義轉換規則,使它們是可擴展的,可測試的和可以重複使用的業務規則/邏輯。作爲管理員,我需要能夠定義同步計劃並輕鬆查看同步日誌/狀態。
是否有現成的解決方案來處理所有這些問題?
喜歡的東西同步框架或許可以做到這一點,但說實話,如果你只是從一個服務(或數據庫),拉取數據剝離出來的是本地所複製的數據,然後合併一起也不會很難做。你可能會發現更多的工作來弄清楚如何告訴框架或圖書館做你想做的事,然後你就可以自己做。
,如果你建立SQL Server數據一個簡單的Web服務,因爲那麼你的更新只需要知道如何與服務,你只要給它服務的列表會更加真實。實際更新過程非常簡單(從服務中獲取內容,將其寫入磁盤,然後將其合併到本地客戶端的數據中以使用它)。
這在技術上並不困難,但我並不真正喜歡構建所需的基礎架構。例如,以前我通過使用控制檯應用程序+ Windows任務調度程序來解決調度問題,但這對我來說總是感覺像是一種黑客。但無論如何,這是一個公平的答案,如果沒有人添加任何東西,我會接受它。 – 2011-04-09 09:34:07
「合併」是什麼意思?如果您不跟蹤更改,您如何知道差異是由於本地更改還是遠程更改導致的? – 2011-04-08 20:37:14
此數據沒有可能的本地更改,因此合併僅用於防止重複。謝謝,更新了這個問題來反映這一點。 – 2011-04-08 20:38:14