如何解决db4o 8上不会触发db4o创建事件
| 我在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,以获得一些性能优势,但是出现了此问题。 您能帮我解决这个问题吗?解决方法
我试图重现该问题,对我来说很好。您确定添加的订单已实际存储吗?您正在使用哪种收藏? 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);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。