Вопрос

В контексте Entity Framework 4 поведением по умолчанию при добавлении импорта функции является вызов ее через ExecuteFunction<T>(), где T очевидно, должен реализовать некоторые уведомления об изменении свойств.(В моем случае генерируется сложный тип, производный от ComplexObject.)

Мне не нужны или не нужны какие-либо уведомления об изменениях, и я должен отправлять POCO по линии после этих вызовов sproc.

Есть ли способ получить POCO непосредственно из вызова EF sproc?Если нет, есть ли у кого-нибудь рекомендации по превращению моего результата sproc в POCO?

(Я немного поигрался с POCO-шаблон, но, похоже, он никак не поддерживает хранимые процедуры.)

Это было полезно?

Решение

ExecuteFunction<T> возвращает ObjectResult<T>, который реализует IEnumerable<T>, чтобы вы могли проецировать T на что угодно через LINQ.Например.:

IEnumerable<MyPoco> = from f in Context.MyFunction()
                      select new MyPoco
                      {
                          A = f.A,
                          B = f.B
                      };
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top