私はそのようなコード構造を持っています:
var adjective = context.Adjectives.Find(11); //works
var substantive = context.Substantives.Find(11); //works
var address = context.Addresses.Where(v => v.ZipCode == new_possible_address.ZipCode).SingleOrDefault(); //works
var name = context.Names.Find(91); //doesn't work
最後の行はエラーメッセージを示しています。
「プロパティ'Id'はオブジェクトのキー情報の一部であり、変更できません。」
Whereステートメントを削除すると、最後のFindメソッドが機能することに気づきました。それで:
var adjective = context.Adjectives.Find(11); //works
var substantive = context.Substantives.Find(11); //works
var name = context.Names.Find(91); //now works
また、デバッグ機能「Set Next Statement」を使用すると、「Addresses.Where」行の実行直後に形容詞または実質的な行に移動します。どちらの方法も機能しなくなります。
同じコンテキスト内でFindandWhereメソッドを使用できないのはなぜですか?