У меня 2 стола.
Department | Questions
ID Name | DepartmentID QTitle QDescription
1 a | 1 aaa bbb
2 b | 1 ddd ccc
3 c | 2 eee fff
| 2 ggg hhh
| Я хочу группировать данные с помощью ViewModel и отображать их в представлении. Я могу брать сгруппированные данные с помощью QTitle, но не QDescription.
Запрос Linq
var questions= (from s in dbContext.Questions
join b in dbContext.Department
on s.DepartmentID equals b.ID
group s.QTitle by b.DepartmentID into g
select new QuestionGroupedViewModel
{
DepartmentName= g.Key,
QTitle= g.ToList()
}).ToList();
ViewModel
public class QuestionGroupedViewModel
{
public string DepartmentName{ get; set; }
public List<string> QDescription{ get; set; }
public List<string> QTitle{ get; set; }
}





var questions= (from s in dbContext.Questions
join b in dbContext.Department
on s.DepartmentID equals b.ID
group s by b.DepartmentName into g
select new QuestionGroupedViewModel
{
DepartmentName= g.Key,
QTitle= g.Select(x => x.QTitle).ToList(),
QDescription = g.Select(x => x.QDescription).ToList()
}).ToList();
@ Developer007 - вы также столкнетесь с ошибкой `DepartmentName = g.Key,` как группа, выполненная в элементе ID
Да, пробовал, меняю b.DepartmentName вместо b.DeparmentID
Я получаю сообщение об ошибке Select clause. Невозможно неявно преобразовать строку типа в system.Collections.Generic.List <string>. Я добавил .ToList () после выбора. Спасибо за помощь.