升级到VS2010后,Microsoft.Synchronization SyncAgent崩溃

时间:2012-04-15 19:32:50

标签: c# visual-studio-2010 sql-server-ce microsoft-sync-framework

我在Visual Studio 2008中使用.net 3.5设置了一个项目,该项目具有一个组件,用于将我的sqlserver中的数据同步到客户端sqlce数据库(SDF文件)。一切正常,直到我决定将项目升级到Visual Studio 2010,现在以下代码崩溃了:

 try
        {
            MySyncAgent syncAgent = new MySyncAgent(filter);
            SyncStatistics syncStats = syncAgent.Synchronize(); //this crashes
        }

我得到的例外是:EXCEPTION MESSAGE = [对象参考没有设置为对象的实例。]:STACKTRACE = [在SYSTEM.DATA.SQLSERVERCE.SQLCECHANGETRACKING.UPGRADEPUBLICTRACKING(STRING CONNECTIONSTRING)    AT MICROSOFT.SYNCHRONIZATION.DATA.SQLSERVERCE.SQLCECLIENTSYNCPROVIDER.PERFORMUPGRADEIFNECESSARY()    AT MICROSOFT.SYNCHRONIZATION.DATA.SQLSERVERCE.SQLCECLIENTSYNCPROVIDER.BEGINTRANSACTION(SYNCSESSION SYNCSESSION)    AT MICROSOFT.SYNCHRONIZATION.SYNCAGENT.DATASYNCHRONIZE()    在MICROSOFT.SYNCHRONIZATION.SYNCAGENT.SYNCHRONIZE()

我错过了什么?

作为参考,我的MySyncAgent类构造函数如下所示:

 public class MySyncAgent : Microsoft.Synchronization.SyncAgent
{
 public MySyncAgent(string filter)
    {
        this.InitializeSyncProviders(filter);
        this.InitializeSyncTables();
    }
}

1 个答案:

答案 0 :(得分:0)

尝试将SQL CE升级到3.5 SP2。