C# 实体框架。流畅的Api。反转映射

C# 实体框架。流畅的Api。反转映射,c#,entity-framework,ef-fluent-api,C#,Entity Framework,Ef Fluent Api,我有以下课程: class Parent { public int ID; public Child Child1; public Child Child2; } class Child { public int ID; public string Data; } 使用DbModelBuilder,我有以下流畅的API代码: EntityTypeConfiguration<Parent> adrInEgrul = modelBui

我有以下课程:

class Parent
{
    public int ID;
    public Child Child1;
    public Child Child2;
}

class Child
{
    public int ID;
    public string Data;
}
使用DbModelBuilder,我有以下流畅的API代码:

EntityTypeConfiguration<Parent> adrInEgrul 
    = modelBuilder.Entity<Parent>();
adrInEgrul.HasKey(x => x.ID);
adrInEgrul.HasOptional(x => x.Child1)
    .WithOptionalPrincipal();
adrInEgrul.HasOptional(x => x.Child2)
    .WithOptionalPrincipal();
EntityTypeConfiguration adrInEgrul
=modelBuilder.Entity();
adrInEgrul.HasKey(x=>x.ID);
adrInEgrul.has可选(x=>x.Child1)
.使用OptionalPrincipal();
adrInEgrul.has可选(x=>x.Child2)
.使用OptionalPrincipal();
所有这些给了我以下表格:

但我确实需要以下内容:

我很乐意只修复Fluent API部件就得到我想要的,但不知道如何去做(如果可能的话)。

非常感谢您的帮助。

在callum linington的评论之后,我提出了以下流畅的API代码,完成了这项工作

EntityTypeConfiguration<Parent> adrInEgrul 
    = modelBuilder.Entity<Parent>();
adrInEgrul.HasKey(x => x.ID);
adrInEgrul.HasOptional(x => x.Child1);
adrInEgrul.HasOptional(x => x.Child2);
EntityTypeConfiguration adrInEgrul
=modelBuilder.Entity();
adrInEgrul.HasKey(x=>x.ID);
adrInEgrul.has可选(x=>x.Child1);
adrInEgrul.has可选(x=>x.Child2);

只需将
public int Child1Id{get;set;}
和第二个的一个添加到父级!并删除fluent代码