首页 > 解决方案 > 如何为外键设置 EntityFrameworkCore 流体 api?

问题描述

我有这些课程:

public class Field
{ 
    public double FieldId { get; set; }
    public List<Media> Media { get; set; } 
}

public class Media
{
    public double MediaId { get; set; }
    public string Name { get; set; }
}

我想使用 EntityFrameworeCore 流体 api 设置外键。

有人可以给我有关如何执行此操作的建议吗?

我还需要对 Media 类中的 Field 进行某种引用吗?

标签: entity-frameworkentity-framework-core

解决方案


通过说“fluid api”,我认为你的意思是 Fluent Api。看起来您正在尝试建立一对多关系。你可以试试这样的

public class Field
{ 
    public double FieldId { get; set; }
    public List<Media> Media { get; set; } 
}

public class Media
{
    public double MediaId { get; set; }
    public string Name { get; set; }
    public Field Field { get; set; }
}

然后将此行添加到您的 OnModelCreating 方法

modelBuilder.Entity<Field>()
        .HasMany(c => c.Media)
        .WithOne(e => e.Field);

EF CORE 会自动为外键生成影子属性。


推荐阅读