c# - 使用 Linq 重新排列表数据

标签 c# .net linq

我有以下格式的数据:

(Table: Hours)
{ Date = "21/04/2008", Person = Sally, Hours= 3 }
{ Date = "21/04/2008", Person = Sam, Hours = 15 }
{ Date = "22/04/2008", Person = Sam, Hours = 8 }
{ Date = "22/04/2008", Person = Sally, Hours = 9 }

数据类型:Date = Date,Person = String,Hours = Integer

使用 LINQ 我想将其选择成这种格式:

{ Date = "21/04/2008", Sam = 15, Sally = 3 }
{ Date = "22/04/2008", Sam = 8, Sally = 9 }

数据类型:Date = Date,Sam = Integer,Sally = Integer

这可能吗?

最佳答案

from d in data
group d by d.Date into g
select new {Date = g.Key, People = g.Select(gg=>new{Person = gg.Person, Hours = gg.Hours})}

这将为您提供数据,然后只是格式化以正确显示。

关于c# - 使用 Linq 重新排列表数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32031754/

相关文章:

c# - 如何使用过滤器 HostAuthenticationFilter 修改 "Authorization has been denied for this request."

c# - 如何对 Asp.net 成员资格进行单元测试?

c# - 在 Watin 中调用 Javascript

sql-server - 将 IN 子句与 LINQ-to-SQL 的 ExecuteQuery 结合使用

c# - 如何按对象列表进行分组并将该列表声明为 View 模型的属性

C# 将方法中的更改保留在范围之外

c# - 如何正确使用 JSON

c# - 转换为 ASPNET Core 3.1 后 MVC 找不到 View

mysql - 如何根据学号在联结表上进行选择

c# - LINQ 和 EF6 : The context cannot be used while the model is being created