实体框架代码首先复制外键

时间:2018-10-23 19:18:41

标签: c# entity-framework ef-fluent-api

我在一张表中得到了重复的外键。我首先使用EF代码,并使用Fluent API映射表。我不知道为什么会这样。

代表表格的类:

public class ColunaSugestUsuario 
{
    [Key]
    public int CODCOLSUGEST { get; set; }
    public ColunaSugest COLSUGEST { get; set; }
    public Usuarios USUARIO { get; set; }
    public Sugestoes SUGESTOES { get; set; }
    public int CODINDEX { get; set; }
}

注意:此代码中的每个自定义类都包含ICollection中的ColunaSugestUsuario,名为COLUNASUGESTUSUARIO

Fluent API:

modelBuilder.Entity<ColunaSugestUsuario>()
    .HasRequired(s => s.COLSUGEST)
    .WithMany(s => s.COLUNASUGESTUSUARIO)
    .Map(x => x.MapKey("CODSUGEST"));
modelBuilder.Entity<ColunaSugestUsuario>()
    .HasRequired(s => s.USUARIO)
    .WithMany(s => s.COLUNASUGESTUSUARIO)
    .Map(x => x.MapKey("CODCOLUNA"));
modelBuilder.Entity<ColunaSugestUsuario>()
    .HasRequired(s => s.SUGESTOES)
    .WithMany(s => s.COLUNASUGESTUSUARIO)
    .Map(x => x.MapKey("CODUSUARIO"));

结果:

enter image description here

ColunaSugest_CODCOLUNA 不应该存在。对吧?

编辑:

我已经在两端尝试了完全定义的关系(外键作为类属性),但是什么也没发生

0 个答案:

没有答案