【问题标题】:Unnecessary discrimator column in TPC - EF 6, code firstTPC - EF6 中不必要的鉴别器列,代码优先
【发布时间】:2014-11-13 10:27:50
【问题描述】:

我正在尝试从类层次结构中生成架构:

public class BaseEntity
{
    public int Id { get; set; }
}

public class BaseTransaction : BaseEntity
{
// common fields
}

public class MyTransaction : BaseTransaction
{
// type-specific fields
}

Fluent API 中的 DbContext 配置:

public DbSet<MyTransaction> MyTransactions { get; set; }

 protected override void OnModelCreating(DbModelBuilder modelBuilder)
 {
    modelBuilder.Entity<MyTransaction>().Map(m =>
    {
        m.MapInheritedProperties();
        m.ToTable("MyTransactions");
    });
 // ...
 }

我想要一张包含所有字段(继承自所有超类)的表。 此方面有效,但 EF 生成鉴别器列:鉴别器 (nvarchar(128), null),这是 TPH 的典型值。 我想明确地使用 TPC。

任何帮助表示赞赏。

【问题讨论】:

标签: .net entity-framework


【解决方案1】:

如果有人碰巧遇到类似问题,请检查您是否有一些类继承自映射有附加鉴别器列的类。

如果某个类是继承链的一部分,EF 会添加此列。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-20
    相关资源
    最近更新 更多