gpt4 book ai didi

c# - LINQ 选择和分组依据

转载 作者:太空狗 更新时间:2023-10-30 01:15:16 25 4
gpt4 key购买 nike

对 LINQ 还很陌生,我想我要做的应该很简单。我有一个产品列表(ProductIdProductDesc),我试图提取该列表的一个子集并按 ProductId 对其进行分组。从那里,我想将该子集绑定(bind)到 listView。这是我正在处理的查询:

productCounts = (from record in wowReportData 
group record by record.ProductID
into grouping
orderby grouping.Key
select new topProduct
{
ProductID = grouping.Key,
Quantity = grouping.Count(),
Name = grouping.
}).ToList();

这是我要填充的类:

public class topProduct
{
public string ProductID { get; set; }
public int Quantity { get; set; }
public string Name { get; set; }

public topProduct() { }

public topProduct(string productId, string productDesc, int downloadCount)
{
this.ProductID = productId;
this.Name = productDesc;
this.Quantity = downloadCount;
}
}

我只显示 productId 和计数就可以正常工作,但我还需要将描述添加到显示中。我在做分组的时候很困惑如何添加产品描述。

最佳答案

我假设每个 ProductId 都只有一个名称,因此您希望为此按 2 个字段进行分组:

productCounts = (from record in wowReportData 
group record by new { record.ProductID, record.Name } into grouping
orderby grouping.Key.ProductID
select new topProduct
{
ProductID = grouping.Key.ProductID,
Quantity = grouping.Count(),
Name = grouping.Key.Name
}).ToList();

如果不是这种情况,则使用 FirstOrDefault 并指定如何选择它


此外,关于 C# 的一些知识 - 请查看命名约定 herehere

关于c# - LINQ 选择和分组依据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39080027/

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