我正在尝试按如下方式进行标准双向复制。但是,我得到一个 NullReferenceException。这是一个单独的复制项目。我确实在这个复制项目中导入了原始项目中涉及的类(如Item、Category等)。我究竟做错了什么?(如果我使用 VS 进行调试,我可以看到 changedObjects 确实具有所有更改的对象;Replicate 函数内部似乎存在一些问题)
IObjectContainer local = Db4oFactory.OpenFile(@"G:\Work\School\MIS\VINMIS\Inventory\bin\Debug\vin.db4o");
IObjectContainer far = Db4oFactory.OpenFile(@"\\crs-lap\c$\vinmis\vin.db4o"); ;
IReplicationSession replication = Replication.Begin(local, far);
IObjectSet changedObjects = replication.ProviderA().ObjectsChangedSinceLastReplication();
while(changedObjects.HasNext())
replication.Replicate(changedObjects.Next()); // Exception!!!
replication.Commit();
changedObjects = replication.ProviderB().ObjectsChangedSinceLastReplication();
while (changedObjects.HasNext())
replication.Replicate(changedObjects.Next());
replication.Commit();
问候,
索拉布。