難しい質問があります。同じクエリを再実行しなくても、クエリ内のレコード数が変わる可能性があることを確認しました。以下のコードは、シナリオを示しています。
using (var db = new MyContext()) {
var query = from e in db.Entities select e;
//here the query.Count is equals to 100 for example
Thread.Sleep(10000);
//after some times the db has been populated
//here the query.Count is equals to 200 for example without run again the query
}
私の質問は、なぜこの動作なのですか? クエリ結果とデータ層の間の自動バインディングのように見えるのはなぜですか? エンティティ フレームワークはクエリ結果を更新するためにバックグラウンドで動作しますか? 前もって感謝します。