Структура сущностей и хранимая процедура с выходным параметром, возвращающим строку (EF получит сложный тип)

#stored-procedures #row #entity-framework-6 #complextype #output-parameter

#хранимые процедуры #строка #entity-framework-6 #complextype #output-параметр

Вопрос:

Я использую entity framework 6 с хранимыми процедурами. В настоящее время я занимаюсь этой проблемой:

В идеале мне нужно получить данные из одной хранимой процедуры. Эти данные включают в себя: один разговор (базовая информация) несколько клиентов (которые участвуют в этом разговоре) Сообщения из разговора.

Я думаю, что выходные параметры — это правильный способ сделать, но я застрял.

Итак, как я могу это сделать? И это правильный способ получить строки разных данных из хранимой процедуры? Я пытаюсь избежать решения, в котором я бы отправлял повторяющиеся данные о разговоре с каждой строкой клиента.

Ответ №1:

Я нашел альтернативное решение с несколькими наборами результатов здесь и здесь (имхо лучше), но это не ответ на мой вопрос..

Ответ №2:

Вы можете попробовать с

 static void Main(string[] args)
{
  using (SchoolEntities context = new SchoolEntities())
  {
    var outputParameter = new ObjectParameter(“sum”, typeof(decimal));
    context.SchoolBudgetForDateRange(new DateTime(2007, 1, 1), 
      new DateTime(2008, 1, 1), 
      outputParameter);
    Console.WriteLine(outputParameter.Value);
  }
}
  

где SchoolBudgetForDateRange — хранимая процедура

подробнее здесь