私はこのスキーマを持っている:方法:関連するエンティティを挿入しないでください。
http://img602.imageshack.us/img602/6978/schemac.png
私は、データベースにのOrderItemsで注文を挿入したいので、私はこの方法を書いた:
public void SaveOrder(Order order)
{
using (var repository = new StoreEntities())
{
// Add order.
repository.Orders.AddObject(order);
// Add order items.
foreach (OrderItem orderItem in order.OrderItems)
{
repository.OrderItems.AddObject(orderItem);
}
repository.SaveChanges();
}
}
すべてが新しいことを除いて、うまく挿入されています商品のレコードも挿入されています、これは私が望むものではありません。
私が望むのは、OrderグラフとそのOrderItemsを挿入することです。どのように達成することができますか?
本当にありがとうございます、ありがとうございます。
一時的な製品への参照を使用してOrderItemを永続させている場合、製品を永続させない*とはどういう意味でしょうか? Product Referenceとしてnullを持つOrderItemsになります。 – Rytmis
私はすでに製品のデータベースを持っているので、OrderItem.Productは既に永続化されている製品のナビゲーションプロパティです。 – niaher
ああ、あなたのProductItemsが非一時的な*製品に添付されていて、あなたはまだデータベースに新しい製品を入れていると言っていますか? – Rytmis