我想訂閱我的上下文以下this,像這樣的OnjectMaterialized事件:使用EF6訂閱ObjectMaterialized的位置?
((IObjectContextAdapter)this).ObjectContext
.ObjectMaterialized += ObjectContext_OnObjectMaterialized;
但我使用EF6和對崗位不存在在這個版本中提到的OnContextCreated方法。
我試過在上下文構造函數中訂閱物化事件,但是如果數據庫被刪除(我們在集成測試中經常這樣做),事件不再訂閱。我們嘗試在Database.Delete()之後再次訂閱,但它也不起作用。
所以我的問題是,我應該在哪裏使用實體框架6正確訂閱ObjectMaterialized事件?
正如我猜我會說,他們是抽象到['Interception'](https://entityframework.codeplex.com/wikipage ?title =攔截)API。但我會問問題的根源是什麼,也許有更好的方法來解決它比訂閱事件。 –
@BradChristie我在我的一個POCO類中有一個屬性,這個屬性沒有被映射,我想構建它並儘快使其可用(它從本地上下文中加載其他實體)。我假設越早會在ObjectMaterialized上。當然還有其他的方法可以做到這一點,但是既然事件在那裏,我想看看是否可以這樣做。它的工作原理除了上面提到的刪除數據庫時出現的問題之外,事件會丟失,直到另一個上下文被實例化。 – fdiaz