如何在 Entity Framework Code First 中分离对象? [英] How do I detach objects in Entity Framework Code First?

查看:41
本文介绍了如何在 Entity Framework Code First 中分离对象?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

DbContext 上没有 Detach(object entity).

我可以先分离 EF 代码上的对象吗?

Do I have the ability to detach objects on EF code first?

推荐答案

如果您想分离现有对象,请遵循 @Slauma 的建议.如果您想在不跟踪更改的情况下加载对象,请使用:

If you want to detach existing object follow @Slauma's advice. If you want to load objects without tracking changes use:

var data = context.MyEntities.AsNoTracking().Where(...).ToList();

正如评论中提到的,这不会完全分离实体.它们仍然是附加的并且延迟加载可以工作,但不会跟踪实体.例如,如果您只想加载实体以读取数据并且不打算修改它们,则应使用此方法.

As mentioned in comment this will not completely detach entities. They are still attached and lazy loading works but entities are not tracked. This should be used for example if you want to load entity only to read data and you don't plan to modify them.

这篇关于如何在 Entity Framework Code First 中分离对象?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆