Microsoft Sync Framework:合并来自两个表的数据

Microsoft Sync Framework: merging data from two tables

我正在使用 Microsoft Sync Framework,所以问题是我有 2 个具有相同结构的 table,我意识到有时我有相同的数据但不同的 PK,以及新数据和现有 PK .我怎么能合并两个 tables,这种情况是双向的。 None 的数据可能会丢失。

示例:

不应丢失数据的双向同步场景

服务器 1 PK id

人 ------------------------------------------ --------

身份证名

1 John <--- 这里的 id 是 1 等等

2 卡尔

3 凯瑟琳

4 詹姆斯

5 位新人


服务器2 PK id

人 ------------------------------------------ ----------------------

身份证名

1 Carl <--- 这里的 id 是 1 但在另一个 table 是 JHON 等等

2 约翰

3毛

4 路易斯

5个新男孩

我很乐意至少得到第一部分的答案

第二部分: ***但更糟的是还有另一个 table 相关地址

服务器 1 People_Addresses-----------------------------------------

id id_people 地址

1 1 Address1 ----> Jhon 有多个地址

2 1 地址2

3 2 地址 3

4 2 地址 1

.......

服务器 2 People_Addresses ------------------------------------------ ------------

id id_people 地址

1 1 NewAddress3 ----> Carl 刚刚有了一个新地址

2 2 NewAddress3 ----> Jhon 刚刚有了一个新地址

......

提前致谢

除非您更改 PK 以全局唯一标识您的行,否则没有办法解决。 Sync FX 使用您的 PK 来唯一标识您的行,因此它现在知道要在目标上应用更新的记录。

即使不使用 Sync Fx,您仍然会遇到同样的问题。