Я реализовал наследование с полем дискриминатора, поэтому все мои записи находятся в одной таблице. Мой базовый тип - Person (также имя таблицы), а Driver и Passenger наследуют его. Я получаю экземпляры правильного типа (Драйвер и Пассажир), когда я выполняю запрос в контексте объекта для Лица. Пример:Наследование EF4 и хранимые процедуры
var q = from d in ctx.Person
select d;
Но я также создать функцию, которая вызывает хранимую процедуру и отображенный вывод функции к типу лица. Но теперь я получаю список Person, а не драйверы или пассажиры, когда я выполняю этот метод.
Кто-нибудь знает, как это решить или это ошибка в EF4?
Проблема в том, что мое поле дискриминатора не отображается на объекте, и я хотел бы сохранить его таким образом, потому что мы не хотим раскрывать это свойство разработчикам, которые используют нашу библиотеку. Поэтому я боюсь, что мне понадобится собственное решение :-( – 2010-12-07 07:15:41