私はEntityFramework4を初めて使用します。SQLServerとMySQLを少しいじってみました。遅延読み込みに関してMySQLの使用で問題が発生しました。また、MySQLコネクタでは、同じ接続で複数のクエリを実行できないと考えています。最初に閉じる必要があります。
クエリを実行し、結果への参照をクラスのフィールドに保存してから、それを変更/保存するか、関連データをロードしたいと思います。ただし、コンテキストは範囲外になり、破棄されました。
class MyClass {
List<AThing> _stuff;
private void ReadStuff() {
using (var context = new MyEntities()) {
_stuff = context.TableOfStuff.ToList();
}
}
// Stuff is used by other methods, bound to controls, etc.
}
それで、Stuff
文脈なしで存在しますか?私が理解していることから、コンテキストは変更の追跡などを行うものです...一度ToList()
呼び出されると、私のコンテキストは別のクエリには役に立ちません。
これを避けなければなりませんか?これを達成するためのより良い方法はありますか?私は上で間違っていますか?