5

Customerナビゲーションプロパティを持つオブジェクトがありますDays(daysは、-day_id、customer_id-FKを持つ別のテーブルです)。

mycontext.Customers.ApplyCurrentValues(cust);
mycontext.SaveChanges();

これは、顧客のスカラープロパティのみを更新し、日数は更新しませんでした。Daysを更新するスマートな方法はありますか?(日中に手動で繰り返すことなく..)?そうでない場合-2番目のテーブル(日)を更新するためのベストプラクティスはありますか?可能であれば、明示的なコードを使用してください。

ps現在EF4.0を使用しています

4

2 に答える 2

5

GraphDiff切断されたオブジェクトを操作するためのシンプルで簡単な方法が必要な場合は、ライブラリを使用できます。

mycontext.UpdateGraph(cust, map => map.OwnedCollection(x => x.Days));
mycontext.SaveChanges();

これにより、顧客オブジェクトが挿入または更新Daysされ、コレクションも更新されます。

于 2014-08-24T04:27:52.377 に答える
1

いいえ、関連するエンティティを手動で反復せずにそれを行うことはできません。この質問と回答を見て、役立つかもしれません。子エンティティを変更するMVCエンティティフレームワーク

于 2012-09-12T01:28:33.080 に答える