質問: context.FeedSubmissionEntries.ToList(); } } ``` グラフを作成します。 ![ここに画像の説明を入力してください](https://i.stack.imgur.com/AW9q7.png) それで、これはクライアントサイドの評価によるものでもないと思いますか? 編集2: EF Core 2.1.4を使う そしてオブジェクトヒープ: ![ここに画像の説明を入力してください](https://i.stack.imgur.com/bcOw0.png) 編集3: 保持グラフを追加しました。EFCoreの問題と思われますか? ![ここに画像の説明を入力してください](https://i.stack.imgur.com/cGIKr.png)
回答: 私は同じ問題にぶつかった。私は、問題が何であったか知っていたら、私はそれのためにバグレポートを見つけることができたここ EntityFrameworkCoreリポジトリに。 簡単に言うと、インスタンスメソッドをIQueryableに含めるとキャッシュされ、コンテキストが破棄されてもメソッドが解放されないということです。 現時点では、問題の解決に向けて多くの進歩が見られたようには見えません。私はそれに注目し続けるつもりですが、今のところ私はメモリリークを回避するための最良の選択肢があると信じています: 1. メソッドを書き直して、インスタンスメソッドがIQueryableに含まれないようにします。 2. インスタンスメソッドを含むLINQメソッドを使用する前に、IQueryableをToList()でリストに変換します(データベースクエリの結果を制限しようとしている場合は理想的ではありません)。 3. 呼び出しているメソッドを静的にして、メモリの量を制限する