如何防止基类中的ef索引在派生类中继承

时间:2015-05-21 09:59:58

标签: c# entity-framework entity-framework-6 ef-migrations

我有这两个班级

public class BaseClass
{
  [Key] 
  [Column(Order=1)]
  public int id1 { get; set;}
  [Key] 
  [Column(Order=2)]
  [Index("UQ_MyIndex", 1, IsUnique = true)] 
  public int id2 { get; set; }
  [Index("UQ_MyIndex", 2, IsUnique = true)] 
  public string code {get; set;} 
}

public class ChildClass : BaseClass
{
  public int OtherProperty { get; set;}
}

使用每种类型的表(TPT)继承子类。问题是,当我添加迁移时,我得到2个索引" IX_MyIndex"在baseclass和childclass中。更糟糕的是,因为"代码"在ChildClass db表中不存在,子类索引只有" id2"。我可以在迁移文件中删除它,但有没有其他解决方案可以防止索引被继承?

0 个答案:

没有答案