我试图映射两个实体,其他类似的问题对我没有帮助。
class Dog {
int id;
string Name;
}
class Person {
int id;
string Name;
Dog Dog;
}
一个人必须只有一只狗,但狗可能是一只狗。
在数据库中,表Dog中有一个FK,可空列idPerson指向表Person。
我目前使用这些声明进行映射:
modelBuilder.Entity<Person>().HasOptional(x => x.Dog).WithOptionalPrincipal().Map(x => x.MapKey("idPerson"));
因为我不能这样做:
modelBuilder.Entity<Person>().HasRequired(x => x.Dog).WithOptional().Map(x => x.MapKey("idPerson"));
或者这个:
modelBuilder.Entity<Person>().HasRequired(x => x.Dog).WithMany().Map(x => x.MapKey("idPerson"));
或wathever。
我是新来的,对任何错误都很抱歉。
有人可以帮助我吗?