entity framework代码对象实例化的第一个回调
这可能是一个遥不可及的问题,但是只要从数据库加载了一个新实例(作为例如linq查询的一部分),调用Create或类似物,就可以在实体对象中进行回调激活。 ?
这种回调的目的是从封闭的业务对象传达上下文或一组初始化参数。
DbContext
肯定没有它,但您可以尝试将其转换回ObjectContext
并使用:
var objectContext = ((IObjectContextAdapter)dbContext).ObjectContext; objectContext.ObjectMaterialized += ...
它将从数据库加载对象后触发(我不确定它是否也为新创建的对象进行了交易)。 它是所有对象的全局事件,因此您必须将一些逻辑放入处理程序中,以便仅为某些类型运行代码。