0

「Question」というエンティティ タイプがあります。その新しいインスタンスを作成し、それをエンティティ セット「Questions」に追加すると (AddObject() を使用)、コンテキストで SaveChanges() メソッドを呼び出すよりも、すべて正常に動作します。しかし、私がそれを追加したが、まだ SaveChanges() を呼び出さずに、クエリ結果に最近追加された 'Question' オブジェクトが含まれていない 'Questions' に対していくつかの linq を実行しようとすると、SaveChanges() が呼び出されるまで linq には表示されないようです。これは正しい動作ですか、それとも何か見逃していますか?

4

2 に答える 2

1

特にEntity Frameworkを参照している場合、これは正しい動作だと思います。

これにより、変更の保存が呼び出される前に追加したオブジェクトを取得できるはずです。つまり、オブジェクトを追加した後です。

ObjectStateManager.GetObjectStateEntries 

msdn リファレンス

于 2013-01-14T16:14:05.233 に答える
0

簡単にするために、LINQを使用せずに、Count()メソッドを使用して、AddObject()の後にある質問オブジェクトの数を確認します。

(_context.Questions.ToArray()).Count()

8を得た

// defaultQuestion object initialization here ...
_context.Questions.AddObject(defaultQuestion);
(_context.Questions.ToArray()).Count()

再び8を得た

于 2013-01-14T16:22:32.133 に答える