考虑一个包含名称的数据库表,其中包含三行:
SubjectID StudentName
--------- -------------
1 Peter
2 Paul
2 Mary
是否有一种简单的方法可以将其转换为实体框架中的单个字符串?像这样的东西:
SubjectID StudentName
---------- -------------
1 Peter
2 Paul, Mary
检查this link以获取更多信息。
答案 0 :(得分:6)
您可以使用GroupBy按主题对学生进行分组:
var result = StudentSubjects
.GroupBy(x => x.SubjectID)
.Select(x => new
{
Subject = x.Key,
Names = String.Join(", ", x.Select(n => n.Name))
});
我使用String.Join来连接名称列表。