對映一對多

所以假設你有兩個不同的實體,如下所示:

public class Person
{
   public int PersonId { get; set; }
   public string Name { get; set; }
}

public class Car
{
   public int CarId { get; set; }
   public string LicensePlate { get; set; }
}

public class MyDemoContext : DbContext
{
   public DbSet<Person> People { get; set; }
   public DbSet<Car> Cars { get; set; }
}

並且你想在它們之間建立一對多的關係,也就是說,一個人可以擁有零個,一個或多個汽車,並且一輛汽車完全屬於一個人。每個關係都是雙向的,所以如果一個人有車,那麼該車就屬於那個人。

要做到這一點,只需修改你的模型類:

public class Person
{
   public int PersonId { get; set; }
   public string Name { get; set; }
   public virtual ICollection<Car> Cars { get; set; } // don't forget to initialize (use HashSet)
}

public class Car
{
   public int CarId { get; set; }
   public string LicensePlate { get; set; }
   public int PersonId { get; set; }
   public virtual Person Person { get; set; }
}

就是這樣:)你已經建立了自己的關係。在資料庫中,當然用外來鍵表示。