Reputation:
I see there is a similar question asked here but I don't think it was very clear so I'm creating another : Entity Framework: Inheritance, change object type
I have an Entity Student that inherits from an Entity Person.
At some point a Person could become a Student.
Is there any way in Entity Framework 4 to handle this without a stored procedure or creating a new entity.
Upvotes: 6
Views: 3965
Reputation: 33206
No. The EF inheritance does not support this scenario. The best way to create a Student for an existing Person is to use a stored procedure.
Please note that this is not a stored procedure that is wired up to the Student entity through mappings, but a separate one that can be called explicitly from code. Ideally it would be a SP that takes a PersonID as a parameter, inserts a new row into the Student table using that PersonID, and then returns a complete Student so that it can be used immidiately.
Upvotes: 8