我有一个在数据库上运行存储过程的vb.net程序。在构建数据集之后,我在数据集内扫描表格以搜索特定信息。我使用Select Case语句来查找正确的信息。我遇到的问题是我无法弄清楚如何将结果显示为"总和"。我知道这是因为我正在使用" For Each"但我不确定如何分配"结果"到ds.tables(0).Rows
代码:
For Each Result As DataRow In ds.Tables(0).Rows
Select Case Result("Report")
Case "TOTALS"
Select Case Result("Description")
Case "Coupons", "Coupons Tax-Free", "GC"
MsgBox(Result("netAmt"))
End Select
End Select
Next
按照编码,我正在接收3个消息框。第一个:
"15"
第二个:
"10"
第三:
"5"
我更愿意看到所有3个的总和:
"30"
如何检索这些总和,请记住,在某些情况下,3个中的一个可能会返回为0
答案 0 :(得分:2)
您需要一个额外的变量来存储一个总和,例如:
Dim numberOfStudents As Integer = 0
然后,不是显示当前净额,而是将其添加到当前总和中:
sum = sum + FoundRow("netAmt")
为了简化我假设FoundRow
返回一个数字。但是,如果它返回例如一个字符串,则必须按以下方式解析它:Integer.Parse(FoundRow("netAmt"))
。
最后,在for循环之后,显示结果:
MsgBox(sum)