我正在尝试将我的上下文订阅到this之后的OnjectMaterialized事件,如下所示:
((IObjectContextAdapter)this).ObjectContext
.ObjectMaterialized += ObjectContext_OnObjectMaterialized;
但我使用的是EF6,该帖子中提到的OnContextCreated方法在此版本中不存在。
我尝试在上下文构造函数中订阅物化事件,但是,如果数据库被删除(我们经常在集成测试期间执行),则不再订阅该事件。我们尝试在Database.Delete()之后再次订阅,但它也不起作用。
所以我的问题是,我应该在哪里使用Entity Framework 6正确订阅ObjectMaterialized事件?
答案 0 :(得分:1)
您可以简单地对上下文进行子类化并在构造函数中订阅该事件吗? (我已经完成了这个,它适用于我的场景.YMMV。)
答案 1 :(得分:0)
ModelContext modelContext = new ModelContext(); //Inherit DbContext
IObjectContextAdapter contextAdapter = modelContext;
ObjectContext objectContext = contextAdapter.ObjectContext;