Stephen Lacy
Stephen Lacy

Reputation:

Changing Inherited Types in Entity Framework

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

Answers (1)

Morteza Manavi
Morteza Manavi

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

Related Questions