Inheritance in Entity Framework
Inheritance is a property of object-oriented programming that enables you to extend new classes from existing ones and provide additional functionality to them. There are scenarios when the number of entities in the database does not match exactly with the number of the entities we need in the object model. We may need some entities that do not have any corresponding table in the database. To cater to this demand, Entity Framework provides support for entity inheritance. You can create new entities by deriving from existing entities or create altogether new entities and then define the relationship between them in your object model.
Entity Framework supports the following types of inheritance:
Table-per-Hierarchy: This is the default inheritance mapping strategy used by Entity Framework, and uses one database table for the entire inheritance chain and a discriminator column to distinguish between the classes in the inheritance hierarchy. In essence, this concept...