gpt4 book ai didi

entity-framework-4.1 - Entity Framework ,更新前值的触发机制

转载 作者:行者123 更新时间:2023-12-04 18:18:28 24 4
gpt4 key购买 nike

在更新对象值之前,EF 中是否有任何内容?

例如当实体对象让我们说用户被保存时,我想在更新用户对象值之前知道用于记录目的。

谢谢,

最佳答案

如果您使用 ObjectContext (edmx) 您可以订阅 SavingChanges 事件。

context.SavingChanges += context_SavingChanges;

这可以在 SaveChanges() 时访问原始值和当前值。被执行:

private void context_SavingChanges (object sender, EventArgs e)
{
ObjectContext context = sender as ObjectContext;
if (context != null)
{
foreach (ObjectStateEntry entry in context.ObjectStateManager
.GetObjectStateEntries(EntityState.Modified))
{
// TODO: do some logging with these values.
entry.OriginalValues;
entry.CurrentValues;
}
}
}

如果您使用 DbContext,您可以通过

((IObjectContextAdapter)this).ObjectContext.SavingChanges

关于entity-framework-4.1 - Entity Framework ,更新前值的触发机制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11231913/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com