Fluent Api. Как отключить TPH? Почему EF пытается найти поле которого нет в сущности?

Помогите. Как отключить TPH, а точнее что бы EF не требовал создания поля Discriminator? И можете объяснить почему FE ищет поле (в моем случаи это supplier_Id) которого нет в сущности?

Сущность
public class Supplier
    {
        public int Id { get; set; }
        public int companyId { get; set; }
        public virtual Company Company { get; set; }
}


Конфигурация
public class SupplierConfiguration : EntityTypeConfiguration<Supplier>
    {
        public SupplierConfiguration()
        {
            ToTable("suppliers");
            HasKey<int>(s => s.Id);
            Property(s => s.companyId).HasColumnName("companyid").IsRequired();
            HasRequired(s => s.Company).WithMany().HasForeignKey(s => s.companyId);
        }
    }


Контекст
protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
            modelBuilder.Configurations.Add(new SupplierConfiguration());
            modelBuilder.Configurations.Add(new CompanyConfiguration());
            modelBuilder.Configurations.Add(new CountryConfiguration());
            base.OnModelCreating(modelBuilder);
        }


Заранее спасибо =)
  • Вопрос задан
  • 128 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы