Entity Framework 6 и наследование TPH: сопоставьте свойства с тем же именем по умолчанию в том же столбце

Начиная с EF6, можно сделать что-то подобное при настройке сопоставлений сущностей с использованием наследования таблиц на иерархию:

public class MyContext : DbContext 
{
    public DbSet<Device> Devices { get; set; }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Entity<ABatteryPoweredDevice>().Property(c => c.BatteryLevel).HasColumnName("BatteryLevel");
        modelBuilder.Entity<ADifferentBatteryPoweredDevice>().Property(c => c.BatteryLevel).HasColumnName("BatteryLevel");
    }
}

BatteryLevel не является частьюDevice Базовый класс - это свойство производных классов, реализованных для выполнения контракта интерфейса.

Можно ли сделать это поведением по умолчанию, а не добавлять новое отображение для каждого производного класса?

Ответы на вопрос(1)

Ваш ответ на вопрос