0

サブエンティティ OrderDetail を持つエンティティ Order があります。Order を更新し、新しい OrderDetail を追加したいと考えています。どうすればいいですか?

注文の状態を変更済みに設定しようとしましたが、次のエラーが発生します。

参照整合性制約違反が発生しました: 参照制約を定義するプロパティ値が、リレーションシップ内のプリンシパル オブジェクトと従属オブジェクトの間で一貫していません。

更新: 新しい OrderDetail を追加した後、主キーの一部である注文タイプを更新したいと考えています。OrderDetail の状態を modified に設定しようとしましたが、新しいエラーが発生しました:

Store update、insert、または delete ステートメントが予期しない数の行 (0) に影響を与えました。エンティティが読み込まれてから、エンティティが変更または削除された可能性があります。ObjectStateManager エントリを更新します。

4

1 に答える 1

0

に設定する前に、まず新しい状態に設定してみOrderDetailてください。AddedOrderModified

var newOrderDetail = order.OrderDetails.First();
context.Entry(newOrderDetail).State = EntityState.Added;
context.Entry(order).State = EntityState.Modified;

モデルとシナリオの詳細によっては、これが機能する場合と機能しない場合があります...

于 2013-01-09T21:46:40.287 に答える