Sync Framework:SqlSyncProvider ItemConflicting vs ApplyChangeFailed

时间:2010-04-22 10:12:29

标签: sql-server microsoft-sync-framework

我正在尝试使用设计同步应用程序来同步不同SQL Server数据库之间的更改。

我想出了一个基于接收ItemConflicting事件的设计,存储与冲突相关的知识,并离线解决所有冲突。

但是,我似乎只能触发ApplyChangeFailed事件。有没有什么理由为什么SqlSyncProvider不使用ItemConflicting事件?我只是错误地接触了这个事件吗?

我关心的原因是ItemConlficting事件允许我简单地记录冲突并继续使用ApplychangeFailed事件无法实现的其他同步。

1 个答案:

答案 0 :(得分:0)

简单地引发ApplyChangeFailed以指示冲突或错误,无论您是通过解析或指定哪一行应该获胜还是忽略它来解决冲突,您都应该能够继续进行同步过程。

通过存储“知识”不确定您的意思,您指的是同步知识还是指的是冲突的行?

ApplyChangeFailed事件参数具有访问冲突行的属性,如果这是您需要的。然后,您可以拦截冲突行,然后将ApplyAction设置为continue或RetryNextSync