У меня есть таблица расписания с данными следующим образом ...C# Entity Framework Группировка
ScheduleID | CustomerID | SubdivisionID | LotNumber | ProductID | ProductDate
1 1 1 5555 1 11/7/2015
2 1 1 5555 2 11/8/2015
3 1 1 5555 3 11/9/2015
4 2 1 7777 1 11/7/2015
5 2 1 7777 2 11/8/2015
6 2 1 7777 3 11/9/2015
Мне нужна C# Linq To Entities запрос, который возвращает данные, сгруппированные по CustomerID, SubdivisionID, LotNumber со всеми датами продукта в ряд.
Так, например, мне нужно, чтобы увидеть данные, как это ...
CustomerID | SubdivisionID | LotNumber | ProductDate1 | ProductDate2 | ProductDate3
1 1 5555 11/7/2015 11/8/2015 11/9/2015
2 1 7777 11/7/2015 11/8/2015 11/9/2015
Я считаю, что включает в себя некоторые группировки и объединения, но я не слишком большой с Entity Framework группы. Как должен выглядеть мой код здесь?
Я думаю, что-то вдоль этих линий ...
var context = new ScheduleEntities();
from c in context.Schedule
where c.ProductID == 1 || c.ProductID == 2 || c.ProductID = 3
group c by new { c.CustomerID, c.SubdivisionID, c.LotNumber } into grouped
select new {
CustomerID = grouped.Key.CustomerID,
SubdivisionID = grouped.Key.SubdivisionID,
LotNumber = grouped.Key.LotNumber,
ProductDates = **some kind of List<> ??**
}
Как вы можете видеть, я запутался, как я хотел бы получить все даты моего продукта в мою анонимную сущность. Что мне делать?
Используйте хранимую процедуру. Посмотрите на команду PIVOT T-SQL. – user5151179