[英]many to many relationship adding items
我正在使用本網站建議的以下兩個類: https : //www.entityframeworktutorial.net/code-first/configure-many-to-many-relationship-in-code-first.aspx
public class Barca
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int BarcaID { get; set; }
public virtual ICollection<Imbarco> Imbarco { get; set; }
public virtual Imbarco ImbarcoBase { get; set; }
}
public class Imbarco
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int ImbarcoID { get; set; }
public virtual ICollection<Barca> Barche { get; set; }
public virtual ICollection<Barca> BaseBarche { get; set; }
}
我需要創建1到M的關系,為此我使用了這兩個導航屬性:
public virtual Imbarco ImbarcoBase { get; set; }
public virtual ICollection<Barca> BaseBarche { get; set; }
但我還需要一個M到M的關系,為此我用過:
public virtual ICollection<Imbarco> Imbarco { get; set; }
public virtual ICollection<Barca> Barche { get; set; }
當我嘗試在M到M中添加新項目時,不會在數據庫中創建橋接表,如上面報告的鏈接中所述,我嘗試在VisualStudio中生成的edmx文件創建了0..1到M和M到0..1的關系而不是m到M.我做錯了什么?
我會先修復你的模型。 我建議您使用流暢的api配置,但您可以嘗試使用InverseProperty注釋,以便EF建立正確的連接:
public class Imbarco
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int ImbarcoID { get; set; }
[InverseProperty("Imbarco")]
public virtual ICollection<Barca> Barche { get; set; }
[InverseProperty("ImbarcoBase")]
public virtual ICollection<Barca> BaseBarche { get; set; }
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.