0

我正在構建在Windows Mobile設備上運行的應用程序。我正在使用Microsoft的Sync Framework將Sql CE數據庫與主公司數據庫同步。限制同步字段

問題是如何限制同步字段?有問題的表有堆疊的字段,但我只需要在移動設備上顯示其中的一部分,而複製只是一種方式(從服務器到移動設備),因此不應該成爲問題。我見過this類似的問題,但沒有太多的信息。任何人都可以給我更多的建議,如何實現這一目標?我想這是一個非常普遍的要求。

此外,有沒有人知道我是否可以使用Sync Framework 2.0版或我必須堅持1.0。我有一種感覺,2.0不支持Windows Mobile,但我不確定。

乾杯
馬克

回答

2

您可以變更的場景不包括表的所有列的背後產生的T-SQL,但是有幾個陷阱這裏。首先,這意味着你不能使用嚮導來修改同步選擇 - 這不是什麼大問題,並且創建你自己的部分類來覆蓋表中的T-SQL的具體方法可以緩解這一點。

其次,對未包含(不確定是否是一個單詞?)列的更改也會觸發該行的下載,因爲默認情況下更改跟蹤是按行進行的。您可以通過設置Track_Columns_Updated標誌

ALTER TABLE Employee 
ENABLE CHANGE_TRACKING 
WITH (TRACK_COLUMNS_UPDATED = ON) 

根據行和更新的數據和頻率的數量大小改變這種狀況,我常常發現一個簡單的解決方案是提供對服務器的主表的觸發器在包含您需要的數據的單獨表中更新記錄,然後將其同步。它使後來更改下載內容變得更容易。如果你下載莎士比亞的全部作品,這顯然不是一個解決方案,但對於產品目錄的幾千條記錄,我認爲這是完全可行的。

+0

看起來像一些明智的建議。非常感謝Johny!我會在接下來的幾天內檢查並更新這個問題。我真的很困擾同步框架。 – 2010-08-12 05:54:59

+0

我厭倦了同步框架。我的要求非常簡單,單向同步,所以我認爲一些自定義代碼將會極其簡單和快速運行。 Cheers Mark – 2010-08-19 00:34:49