2

我在应用程序中进行缓存,在应用程序启动时,我从数据库中预取几百万行数据并将其卡在本地缓存中。

我的问题是,在获取操作期间,当我通过 EF 加载所有数据时,对象图变得巨大(大约 4GB,一旦我处理上下文就消失了)。我希望能够告诉 EF 不要跟踪此查询范围内(或上下文的生命周期)内的任何对象,以便我的应用程序不会耗尽内存。

有没有好的方法来做到这一点?

4

1 回答 1

3

您可以使用AsNoTracking方法

var entities = dbContext.MyEntities.Where(/**/).AsNoTracking();
于 2012-02-23T00:43:18.070 回答