這裏是我的模型:實體框架代碼優先:如何創建兩個表之間的一對多和一對一關係?
public class Customer
{
public int ID { get; set; }
public int MailingAddressID { get; set; }
public virtual Address MailingAddress { get; set; }
public virtual ICollection<Address> Addresses { get; set; }
}
public class Address
{
public int ID { get; set; }
public int CustomerID { get; set; }
public virtual Customer Customer { get; set; }
}
顧客可以有任意數量的地址,但是隻有一個地址可以是一個郵寄地址。
我可以得到一對一的關係,一對多的工作很好,如果我只使用一個,但是當我嘗試並引入我在地址表上得到多個CustomerID鍵(CustomerID1,CustomerID2,CustomerID3)。我真的把頭髮撕掉了。
爲了映射我使用我知道你在想弄清楚這樣的實體框架的方式在這裏描述的方法http://weblogs.asp.net/manavi/archive/2011/01/23/associations-in-ef-code-first-ctp5-part-3-one-to-one-foreign-key-associations.aspx
然而,這產生具有維護,只有一個'Address'有問題'IsPrimaryMailing = TRUE;它可以很容易出問題。 – georgiosd 2012-05-14 13:13:57