gpt4 book ai didi

c# - 如何使用linq修改表格布局?

转载 作者:太空宇宙 更新时间:2023-11-03 19:03:22 25 4
gpt4 key购买 nike

我是 LINQ 的新手,所以它对我来说似乎很复杂。

我在数据库中有这张表:

enter image description here

我使用 LINQ to Entity 获取表记录:

  var inspectionsData = context.Set<inspectionsData>().ToList();

现在我需要做一些逻辑来使 inspectionsData 看起来像这样:

enter image description here

如您所见,Cities 和 Authority 相同的行我希望它们与总计项目在同一行。我如何在 C# 中使用 linq 进行这些更改?

最佳答案

您使用 GroupBy 语句执行此操作,然后使用 Select 投影到新对象。

var result = context.Set<inspectionsData>()
.GroupBy(d => new {d.City, d.Authority})
.Select(g => new {g.Key.City, g.Key.Authority, Items = g.Sum(x => x.Items)})
.ToList();

它使用匿名对象作为响应,但是由于您的响应实际上与初始对象具有相同的形状,您还可以投影回 inspectionsData:

var result = context.Set<inspectionsData>()
.GroupBy(d => new {d.City, d.Authority})
.Select(g => new inspectionsData{
City = g.Key.City,
Authority = g.Key.Authority,
Items = g.Sum(x => x.Items)})
.ToList();

关于c# - 如何使用linq修改表格布局?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32456729/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com