我正在使用带有c#3.5的db4o 8,我的所有域模型类都启用了TA和TP。 问题是我有自己的ID生成器附加到创建事件与以下代码:
IEventRegistry eventRegistry = EventRegistryFactory.ForObjectContainer(Container); eventRegistry.Creating + = new EventHandler(eventRegistry_Creating);
我有一个包含ORDER列表的USER类。 问题是如果我更新USER类,则不会为USER.ORDERS中新添加的ORDER对象触发创建事件。
在版本8之前,我使用的是v7.4并且它工作正常,但今天我将其升级到v8以获得一些性能优势但是出现了这个问题。
你能帮我解决这个问题吗?答案 0 :(得分:0)
我试图重现这个问题,这对我很有用。您确定添加的订单实际存储了吗?你使用什么样的系列? db4o可激活集合还是常规CLR集合?您使用的是哪个版本?
这是我的小测试用例:
var eventRegistry = EventRegistryFactory.ForObjectContainer(container);
var expectFireCreated = false;
eventRegistry.Created += (sender, args) =>
{
expectFireCreated = true;
};
var costumer = (from Constumer c in container
select c).First();
costumer.Orders.Add(new Order("55"));
container.Commit();
Assert.IsTrue(expectFireCreated);