如何在 EF 4.0 FluentAPI CTP5 中将 0..1 映射到 * 关系?我不断收到此错误
因为从属角色中的所有属性都不可为空,所以主体角色的多重性必须为“1”。
而且我不知道如何修复它..
我的代码看起来像这样
public class Child{
public int pID { get; set; }
public Parent Parent_Object{ get; set; }
public int Parent{ get; set; }
public Child() {
}
}
public class Parent {
public int pID { get; set; }
public List<Child> Children { get; set; }
public Parent () {
}
}
对于映射,代码如下所示
modelBuilder.Entity<Child>().HasKey(c=> c.pID);
modelBuilder.Entity<Parent>().HasKey(c=> c.pID);
modelBuilder.Entity<Child>().HasOptional(c=> c.Parent_Object)
.WithMany(p => p.Children)
.HasForeignKey(p => p.Parent);
也有可能只有
public Parent Parent{ get; set; }
代替
public Parent Parent_Object{ get; set; }
public int Parent{ get; set; }
在数据库中,FKfield 被命名为“Parent”而不是“ParentpID”。在这种情况下,映射应该如何?