gpt4 book ai didi

c# - gridview 列的总和,跳过重复项

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:26:55 24 4
gpt4 key购买 nike

我有一个 datagridview,里面装满了类似这样的数据

Selected  ProductName InvoiceNr InvoiceValue
X A 1 10
B 1 10
X C 2 20
D 2 20
X E 1 10
X F 3 30
G 4 40
X H 2 20

我需要找到所选发票的总和,但如果多次选择任何发票,它应该只计算一次总和,所以我的总和将为 10+20+30。

我应该很容易在 SQL 中对其进行计数,但我需要在 C# 中执行此操作,可能是在遍历所有行的循环中。

有什么最佳方法吗?

我想 datagridview 在这里并不重要,数组算法对我也很有用。

最佳答案

最简单的方法是使用一个 List 来跟踪您已经添加的发票编号——几乎是伪代码,如下所示:

int sumOfValues = 0;
List<string> addedInvoiceNumbers = new List<string>();
foreach (DataRow dr in rows)
{
//if row is selected and the list doesn't contain the InvoiceNumber
if (dr[0] == true && !addedInvoiceNumbers.Contains(dr[2]))
{
sumOfValues += dr[3];
addedInvoiceNumbers.Add(dr[2]);
}
}

希望这是有道理的!

关于c# - gridview 列的总和,跳过重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23919727/

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