私はEntity Frameworkを使用しています。Entity Frameworkでオブジェクトをキャッシュする方法
私のデータベースには、出身の人と起源の国が格納されています。私が人物オブジェクトを読み込んでいるとき、私はそれぞれの人が起きた場所が何であるか知りませんでした。不必要な要求がないように国のリストをキャッシュする方法はありますか?
私はEntity Frameworkを使用しています。Entity Frameworkでオブジェクトをキャッシュする方法
私のデータベースには、出身の人と起源の国が格納されています。私が人物オブジェクトを読み込んでいるとき、私はそれぞれの人が起きた場所が何であるか知りませんでした。不必要な要求がないように国のリストをキャッシュする方法はありますか?
Luhmannは既に私の仲間に言ったように、JarekはEntity Frameworkの優れたサンプルキャッシングプロバイダを持っています。彼はhereについて話しています。
ただし、このアプローチは過度のものであることがあります。キャッシングの国は、その努力が価値のない優れた例だと思われます。何らかのアドホックキャッシングを実装する方が良いかもしれません。
これを実行しようとすると、インスタンスのEntity Frameworkエンティティを一度に1つのObjectContextにしか取り付けることができないという主な問題があります。つまり、同時に(Webサイトのように)あなたはキャッシュから項目を取得し、それらを盲目的に使用するだけで問題が発生します。
あなたが必要とするのはクローニングキャッシュです。つまり、キャッシュから何かをつかんでクローンするときです。
は、私は、これは
アレックス・ジェームス
Entity Frameworkのチームマイクロソフトのに役立ちます。このTip 14 - How to cache Entity Framework Reference Data
希望を行う方法を示し先端をまとめます。
私はその国のリストを最初にキャッシュし、検索された各人に適切な国を割り当てます。人をキャッシュすることを決定した場合は、キャッシュされた国に依存するようにし、国/国リストを更新するときにそれらを無効にする必要があります。
あなたはJaroslaw Kowalskiの優れたtracing and caching provider wrappers for Entity Frameworkを見ることができます。
バンプ。ルックアップテーブルのキャッシュに関して、5年以上の間にEFで変更されたことはありますか?具体的には、EFはこれを行う方法を統合しましたか? – RLH