我在SQL Server中有一个视图,它是多对多的聚合。所以返回的数据是这样的:
User1 : Data1
User1 : Data2
User1 : Data3
User2 : Data1
User2 : Data2
等
通常,如果我使用LINQ with Entity Framework,我会使用导航属性并获取嵌套列表。所以我可以通过连接表中的数据遍历用户和嵌套循环。
平面视图只是一个大清单。我正在尝试对用户进行分组,以便我可以使用相同的foreach循环来显示数据。
,例如,
User1 - Data1, Data2, Data3
User2 - Data1, Data2, Data3
有没有办法基于单个表(视图)以这种方式创建分组
希望这是有道理的。
答案 0 :(得分:0)
这样的事情应该这样做。
var q = from x in db.tbl
group x by x.User into g
select new
{
User = g.Key,
Data = g.Select(y => y.Data)
};