Entity Frameworkを閉じているときに「読み取り」を呼び出します。Entity Frameworkの:<strong>は、DataReaderオブジェクトを</strong></p> <p>を閉じているとき、私は、並列非同期呼び出しと私のサービスを荒れ狂ったとき、私は断続的にこの問題を取得しています「読み取り」の呼び出し:DataReaderのが
私は私の定義されたEFクエリに.ToList()を呼び出すときに読者がアクセスされたことを理解しています。
私はこれを回避するために、EFのクエリを構築する際のベストプラクティスとは何かを見つけるしたい、とsimilar問題。次のように
私のアーキテクチャは次のとおりです。
マイエンティティデータレイヤは、私のエンティティ(_myEntities)をインスタンス化する静的コンストラクタ、と、静的なクラスです。 MergeOptionなどのエンティティのプロパティも設定します。
この静的クラスは、単にエンティティにアクセスするのpublic staticメソッドを公開します。
public static GetSomeEntity(Criteria c) {
...
var q = _myEntitites.SomeEntity.Where(predicate);
return q.ToList();
}
この
はしばらくの生産に取り組んできましたが、上記のエラーと1 hereは、ESPのクライアントからの重い負荷の下で、断続的に起こります。私は現在また設定していますMultipleActiveResultSets =接続文字列ではTrueです。
もう一度正しく! 最初は、新しいオブジェクトコンテキストリファレンスを作成し、そのプロパティ(トラッキング、タイムアウト)をすべて設定するオーバーヘッドについて心配しましたが、測定されたテストをいくつか実行しましたが、それほど違いはありません。再度、感謝します! –