У меня очень простая хранимая процедура, которая возвращает несколько наборов записей.Все наборы записей имеют псевдонимные столбцы, поэтому все они выглядят одинаково.
Например,
SELECT TOP 10 FooId AS Id, Name As Name FROM Foos
SELECT TOP 10 BarId AS Id, Name As Name FROM Bars
...
Для моей настройки EF я использую POCO и у меня есть свой собственный DataContext (без кодапоколения).
Теперь я создал «Импорт функций», используя подробную технику здесь .
Но проблема в том, что он создает сложный тип с Id иИмя, а не тип, который может содержать несколько наборов идентификатора и имени.Может ли EF не обнаружить, что я возвращаю несколько наборов записей?
Таким образом, сохраненный процесс выполняется должным образом, но возвращаются только записи из 1-го оператора выбора, остальные отбрасываются.Поэтому я получаю только 10 записей.
Вот как я выполняю SPROC в моем пользовательском DataContext:
public ObjectResult<SomeSimpleProc_Result> GetSomeStuff()
{
return base.ExecuteFunction<SomeSimpleProc_Result>("SomeSimpleProc);
}
И результат возврата POCO:
public class SomeSimpleProc_Result
{
#region Primitive Properties
public int Id
{
get;
set;
}
public string Name
{
get;
set;
}
#endregion
}
В результате я хочу получить объект с 0- * объектами (в приведенном выше случае 3 объекта).Каждый объект должен иметь набор простых объектов (Id, Name).
Я думаю, что проблема определенно связана с настройкой «Импорт функции».Как я должен создавать сложный тип?Или я должен использовать «Возвращает коллекцию сущностей».
Есть идеи?