私はSilverlight 4、Entity Framework 4およびWCF Data Servicesを使用しています。 プレイリストオブジェクトがあるとします。 Playlistオブジェクトにはプロパティがあり、表示オブジェクトに対して0〜1のナビゲーションプロパティで表される外部キーがあります。データベースには、Display_Id列があります。WCFデータサービスでオブジェクト全体ではなく、外部キーを保存します。
データベースから表示オブジェクト全体をロードせずに、プレイリストを保存してdisplay_idを直接設定しようとしています(クエリ文字列の表示IDを取得します)。 私が試してみた:
playlist.Display = new Display() { Id = 3136 };
// this SetLink throws an exception that the Display is not yet tracked
context.SetLink(playlist.Display, "Display", playlist);
// or i've tried, but get an error: Entities in 'EDM.Displays' participate in the //'DisplayX' relationship. 0 related 'X' were found. 1 'X' is expected
context.AddToDisplays(playlist.Display);
context.SetLink(playlist, "Display", playlist.Display);
が、私は私のEDMを変更する必要があるか、クライアント側でこれを行う方法はありますか?
私は、AddToDisplaysメソッドがコンテキストにそれを添付すると信じています。 – Aligned
EFは自分自身を助ける人を助ける;) – ASpirin