问题
In my project I have:
public class BaseEntity {
[Key]
public int Id {get; set; }
}
Then I have to define 10+ POCO classes to define the tables in my database:
public class MyTable : BaseEntity {
//define properties here
}
Of course, because MyTable
inherits from BaseEntity
I get that Discriminator field. I want to get rid of the Discriminator
field as I do not need the table BaseEntity
to be created nor I need to implement some sort of inheritance into my database.
Is it possible?
回答1:
A couple options:
- Make
BaseEntity
abstract
- Use
modelBuilder.Ignore<BaseEntity>()
inyourDbContext.OnModelCreating
来源:https://stackoverflow.com/questions/30893785/code-first-avoid-discriminator-column-and-keep-inheritance