映射一对多
所以假设你有两个不同的实体,如下所示:
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; }
}
就是这样:)你已经建立了自己的关系。在数据库中,当然用外键表示。