使用主体上的单向导航属性将1映射到零或一,而不依赖于FK属性

时间:2014-05-23 15:24:53

标签: orm entity-framework-6 fluent

我试图映射两个实体,其他类似的问题对我没有帮助。

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。

我是新来的,对任何错误都很抱歉。

有人可以帮助我吗?

0 个答案:

没有答案