Изменение унаследованных типов в Entity Framework - PullRequest
5 голосов
/ 29 сентября 2010

Я вижу, что здесь был задан похожий вопрос, но я не думаю, что он был очень ясным, поэтому я создаю другой: Entity Framework: Наследование, изменение типа объекта

У меня есть студент Entity, который унаследовал от Entity Person.

В какой-то момент Человек может стать Студентом.

Есть ли способ в Entity Framework 4 справиться с этим без хранимой процедуры или создания новой сущности.

1 Ответ

6 голосов
/ 29 сентября 2010

Нет. Наследование EF не поддерживает этот сценарий. Лучший способ создать Student для существующего Person - это использовать хранимую процедуру .
Обратите внимание, что это не хранимая процедура, которая подключается к сущности Student посредством сопоставлений, а является отдельной процедурой, которую можно явно вызывать из кода. В идеале это будет SP, который принимает PersonID в качестве параметра, вставляет новую строку в таблицу Student , используя этот PersonID , а затем возвращает Студент , чтобы его можно было использовать немедленно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...