如何使用与父表相同的主键创建导航属性?

时间:2017-07-14 12:25:23

标签: entity-framework ef-code-first

两张桌子:

Orders [Key: OrderId]
OrderStats [Key: OrderId]

每个订单行在OrderStats中都有零行或一行。因此orderId 1在OrderStats中有一行,主键为OrderId 1

我想在Orders上创建一个导航属性,所以我可以这样做......

Console.Writeline(myOrder.OrderStats.Profit)

如何在代码优先的Entity Framework 6中实现这一目标?

OrderStats是一个表格,其中包含有关每个订单的一些商业智能信息,并按计划更新。由于许多实际原因,该表是独立的,与此案无关。

1 个答案:

答案 0 :(得分:1)

您可以使用以下内容在var codes = { a1: 2.00, a2: 4.00, a3: 6.00 } var input1 = $("#one").val(); // gives a var input2 = $("#two").val(); // gives 1, 2 or 3 var code = codes[input1 + input2]; // combines input 1 and input 2 to give eg a2 document.getElementById("output").innerHTML = code; 中指定此关系:

OnModelCreating

如果modelBuilder.Entity<Order>().HasOptional(e => e.OrderStats).WithRequired();

中还有Order导航属性,则如下所示
OrderStats

EF将在执行数据库操作时保持两个实体的主键相同。