私のドメインエンティティはEFテーブルのタイプごとの継承を使用しています。EFでエンティティのタイプを取得するTPT継承
あなたが請求書を見ることができるように、親エンティティOrder.cs
に座っています。これで、私は請求書を処理するときに問題を引き起こしています。例えば
public ActionResult Create(int orderId)
{
if (orderId == 0) return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
// determine whether the order is a SaleOrder or a PurchaseOrder
// then create the viewModel passing in the SaleOrder/PurchaseOrder details
return View(viewModel);
}
を私は順序が単にそのIdであるか、子を入力把握するにはどうすればよいです?
UPDATE
テオは、私は現在、SaleOrdersとPurchaseOrdersのを取得したか尋ねました。
public DbSet<PurchaseOrder> PurchaseOrders { get; set; }
public DbSet<SaleOrder> SaleOrders { get; set; }
が、私は、各周りにリポジトリを構築しているので、私はPurchaseOrderRepository
とSaleOrderRepository
を持っていると私は私のCRUDの方法を実行します。私は私のコンテキストでこれを持っています。
のような順序を求めます。 SOとPOを同じテーブルまたは異なるテーブルに保管していますか?どのように実際にそれらを取得しますか?注文タイプに割り当てられたIDの範囲には違いがありますか?どんなIDがどのオーダータイプに割り当てられたかを把握している何らかの制御メカニズムを設定するのは嫌ですか? – Theo
@テオ、彼はすでにこれがTPT戦略だと言っています –
そうですね、それぞれに独自のテーブルがあり、それがTPTの意味です。しかし、私は有用かもしれないいくつかの他の情報を追加しました – Ciwan