Dim query = From row In WorkingDataSet.Tables("myTable").AsEnumerable()
Group By InvoiceNumber = row.Field(Of String)("InvoiceNumber") Into InvoiceSum = Sum(row.Field(Of Decimal)("InvoicePaymentAmount"))
Select InvoiceNumber, InvoiceSum
我想显示InvoiceNumber和InvoiceSum,但我不知道如何遍历我的查询以便以这样的格式显示它们。
InvoiceNumber: 154145, InvoiceSum, $13434.12
InvoiceNumber: 154145, InvoiceSum, $13434.12
InvoiceNumber: 154145, InvoiceSum, $13434.12
InvoiceNumber: 154145, InvoiceSum, $13434.12
InvoiceNumber: 154145, InvoiceSum, $13434.12
InvoiceNumber: 154145, InvoiceSum, $13434.12
InvoiceNumber: 154145, InvoiceSum, $13434.12
答案 0 :(得分:1)
如果查询结果属于同一个非匿名class
,则通常会通过覆盖ToString()
的{{1}}方法进行打印。否则,您应该逐个浏览项目并打印它们。
class
一个重要的概念(这里可能会被误解)是For Each q In query
Console.WriteLine("InvoiceNumber: " + q.InvoiceNumber + ", InvoiceSum, $" + q.InvoiceSum.ToString("F2"))
Next
主要是为查询而设计的,而不是动作或赋值。如果您想要打印某些内容(这是操作),您应该在每个元素上使用LINQ
而不是使用For Each