c# – BulkInsertCommand在Sync Framework 2.1中失败

有时,我尝试使用Sync Framework 2.1从SQL Express同步到SQL Server时出现以下错误.一旦客户端收到此错误,他们必须重新初始化范围.像错误状态这样的语法没有任何问题,因为它在很长一段时间内都没有问题(插入发生).有什么想法吗?

上午11:18:21无法为表’XXX’执行’BulkInsertCommand’命令;该交易已回滚.确保命令语法正确.
上午11:18:21 Microsoft.Synchronization
上午11:18:21在Microsoft.Synchronization.Data.ChangeHandlerBase.CheckZombieTransaction(String commandName,String table,Exception ex)

从跟踪日志中:

警告,OfflineAgentMonitor.vshost,13,04 / 05/2011 11:16:17:224,批量命令BulkUpdateCommand失败,出现以下异常.在单次申请期间将重试行. System.Data.SqlClient.SqlException(0x80131904):尝试传递具有19列的表值参数,其中相应的用户定义表类型需要20列.

最佳答案 尝试启用
Sync Fx tracing并检查Sync Fx是否记录原始异常.如果我没记错的话,通常会在db连接丢失时引发异常.您应该能够重试同步,而无需重新配置范围.

点赞