entity framework代码对象实例化的第一个回调

这可能是一个遥不可及的问题,但是只要从数据库加载了一个新实例(作为例如linq查询的一部分),调用Create或类似物,就可以在实体对象中进行回调激活。 ?

这种回调的目的是从封闭的业务对象传达上下文或一组初始化参数。

DbContext肯定没有它,但您可以尝试将其转换回ObjectContext并使用:

 var objectContext = ((IObjectContextAdapter)dbContext).ObjectContext; objectContext.ObjectMaterialized += ... 

它将从数据库加载对象后触发(我不确定它是否也为新创建的对象进行了交易)。 它是所有对象的全局事件,因此您必须将一些逻辑放入处理程序中,以便仅为某些类型运行代码。