Рассмотрим следующую хранимую процедуру:
SELECT * FROM Customers;
SELECT Customer.Id, Customer.Name, Order.Total, Order.DateOrdered
FROM Customers INNER JOIN Orders ON Customers.Id = Orders.CustomerId;
Процедура, очевидно, возвращает два набора результатов, которые я пытаюсь получить с помощью этого метода частичного класса:
public partial class DBSproc : DataContext
{
[Function(Name = "dbo.spGetCustomersAndOrders")]
[ResultType(typeof(Customer))]
// What type should I use here for the second resultset?
[ResultType(typeof(... what here? ...))]
public IMultipleResults GetCustomersAndOrders()
{
IExecuteResult result =
this.ExecuteMethodCall(this,
((MethodInfo)(MethodInfo.GetCurrentMethod())));
return (IMultipleResults)(result.ReturnValue);
}
}
Я понимаю, что первый набор результатов будет сопоставлен с сущностью Customer, но как насчет второго? Второй - выбор пользователя, объединяющий несколько столбцов из нескольких таблиц. У меня нет сущности с этими свойствами.
Должен ли я создать фиктивную сущность только для этого набора результатов? Я надеялся, что смогу как-то использовать анонимные типы для таких специальных запросов.
Спасибо.