2011-02-06 11 views
10

CTP 5でEntity Framework Code Firstのものを見つけ出すのに問題があります。オブジェクトのキャッシュを行っています。たとえば、オブジェクトをロードするページ(ASP.NET MVCサイトで作業する)をロードします。その後、データベースを変更します。私はページを再ロードし、変更は反映されません。私がサイトを殺して再実行すると、明らかに再フェッチされます。どのようにして、一般的にはあるタイプのものか特定のクエリのためのものであっても、いつも新しいコピーを入手するように指示します。私はそれがMergeOptionと関係があるかもしれないと思うが、私はCTP 5で動作するサンプルを見つけるのが難しい。ありがとう。Entity Framework CTP5でオブジェクトキャッシングをオフにする

答えて

15

これはわかりました。以下は時々EFキャッシュから引っ張ってくる:

return (from m in _dataContext.Monkeys.AsNoTracking() 
     where m.MonkeyId == monkeyId 
     select m).FirstOrDefault(); 

return (from m in _dataContext.Monkeys 
     where m.MonkeyId == monkeyId 
     select m).FirstOrDefault(); 

あなたは、変更の追跡/キャッシングのものをバイパスする)(AsNoTrackingを使用することができます

関連する問題