在使用EF5 DbContext之后更改配置时,我遇到了问题。我正在使用POCO T4模板。下面是一个场景:
在初始化上下文之后,我需要做些什么来考虑配置?有可能吗?
提前感谢!
发布于 2013-02-19 09:04:14
如果您查询一个集合,禁用代理创建并再次查询相同的集合,那么无论如何您都有很大的机会获得代理实体。原因是在上下文中内部使用的标识映射。每个实体只能被上下文跟踪一次。因此,如果您在启用代理创建的情况下查询该集,EF将为从数据库加载的每个唯一记录创建带有动态代理的实体实例。当禁用代理创建后再次查询集合时,EF将重用所有已经创建的实体(及其代理),并创建没有动态代理的新实体,只用于尚未加载的记录。
如果您想要避免这些代理,您必须:
您也可以尝试使用AsNoTracking(),但我怀疑它不会起作用。
https://stackoverflow.com/questions/14951826
复制相似问题