エンティティフレームワークオブジェクトの更新

entity entity-framework

質問

データ転送オブジェクトを使用して、エンティティフレームワークとビジネス層およびユーザー層との間でデータを転送します。 DTOに変換されたオブジェクトを取得した場合、エンティティフレームワークで正しいオブジェクトを更新し、複製を挿入するだけではどうすればよいのでしょうか。

人気のある回答

次のコードは、厳密に型指定されたビューからMVCのコントローラパラメータとして作成されたEF 4エンティティを更新します。

エンティティがコンテキストに追加されたら、ObjectStateManagerを使用して状態をAddedからModifiedに変更するのがトリックです。

MyEntities db = new MyEntities();
db.Product.AddObject(product);
db.ObjectStateManager.ChangeObjectState(product, System.Data.EntityState.Modified);
return db.SaveChanges() > 0;

EF5を使用している場合は、@ Sean Millsのコメントに従って。

 ((IObjectContextAdapter) db).ObjectContext.ObjectStateManager.ChangeObjectState(entity, System.Data.EntityState.Added);


Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ