LINQ to Entitiesを使用して別のテーブルに外部キーを持つテーブルに新しいレコードを追加する方法を頭を悩ませています。私は試して説明します:アソシエーションを使用して新しいLINQオブジェクトを作成する
私は2つのテーブルを持つ単純なデータベースを持っていると言う。たとえば、1つのLibraryItemともう1つのLibraryItemStatusを呼び出します。 LibaryItemにはLibraryItemStatusテーブルへの外部キーがあり、項目にステータスを割り当てることができます。
私の質問は、LINQ To Entitiesを使用して新しいLibraryItemを作成し、ステータスに関連付ける方法です。以下の私のコードは間違っていなければなりませんが、私は助けになる例は見つかりません。
LibraryEntities entities = new LibraryEntities();
LibraryItem item = new LibraryItem();
item.Name = "some name";
item.SomeAttribute = "x";
// What do I do here?
// This seems wrong as I don't want a new status.
item.Status = new Status() { id = 1 };
// This seems wrong as I don't really want to have to query the repository
item.Status = entities.Status.First(s => s.StatusID == 1);
//
entities.AddToItems(item);
entities.Savechanges();