При использовании базы данных EF6 Сначала и при попытке выполнить хранимую процедуру автоматически созданный контекст добавляет требуемый метод, но устанавливает возвращаемый тип как ObjectResult. Например, следующее определение:Первая хранимая процедура базы данных EF 6
public virtual ObjectResult<USP_GetItemDetails_Result> USP_GetItemDetails(int? itemNbr, int? siteNbr)
имеет тип возврата:
return ((IObjectContextAdapter)this).ObjectContext.ExecuteFunction<USP_GetItemDetails_Result>("USP_GetItemDetails", itemNbr, siteNbr);
есть в любом случае, чтобы материализовать этот результат, как только на конкретный класс, вместо того, чтобы отправить результат в ObjectResult? Следующий слой в моем стеке не знает о Entity Framework.
Кроме того, если это необходимо, возвращаемый тип хранимой процедуры является сложным типом, который не соответствует ни одному из сущностей БД (это объединение некоторой локальной информации и данных с связанного сервера). – Sykomaniac
Почему не отображать результат себя в новый класс? –
Я мог бы это сделать, но потом я буду отображать его позже, когда я верну результаты в качестве dto через веб-API. – Sykomaniac