实体框架类型使用对象

本文关键字:对象 类型 框架 实体 | 更新日期: 2023-09-27 18:09:56

我正在应用程序上运行内存分析器以查找可能的内存泄漏。System.Data.Metadata.Edm.TypeUsage对象的数量一直在增长,看起来这可能是我的内存问题的原因。

有谁知道从内存中释放这些TypeUsatge对象的方法吗?它们看起来是内部实体框架对象,因为我在代码中没有对它们的任何引用。我已经确认我已经将上下文对象包装在using块中,并且内存正在被释放,但是这种类型的使用并不想消失。

实体框架类型使用对象

如果您能提供任何帮助,我将不胜感激。

您可能正在查看实体框架下面使用的第一级缓存(更改跟踪器)。想了解更多,请点击这里。如果这里存在内存泄漏,我会感到惊讶,更有可能的是这只是正常行为。您看到泄漏了多少内存?

要释放内存,请尝试使用另一个合并选项(如NoTracking)。默认值是AppendOnly,它将保留您可能再次使用的内存类型。NoTracking合并选项每次都会到数据库,并且不会在内存中保留任何内容。