0

DataTable とグループの合計を使用して、vb コード (dot.net v4.0) 内の LINQ でグループを実行するにはどうすればよいですか?

以下のサンプルでは、​​ group by を追加し、 sum を実行する必要がGroupNameありProductNameますQTY。列、順序、場所はサンプルと同じままにする必要があります。グループと合計を追加するだけです。フォーマットは同じままである必要があります (e("FieldName") を使用して行を取得します)。

Dim ordersTable As DataTable = _dsProd.Tables("tblProductSummary")
Dim query =
         (From e In ordersTable
          Where (e("Type").ToString() = "1" Or IsDBNull(e("Type")))
          Order By e("GroupSortOrder") Ascending, e("ProductName")
          Select
            GroupName = e("GroupName"),
            ProductName = e("ProductName"),
            QTY = e("QTY"),
            Type= e("Type")
          )
4

1 に答える 1

0
Dim query =
         (From e In ordersTable
          Where (e("Type").ToString() = "1" Or IsDBNull(e("Type")))
          Order By e("GroupSortOrder") Ascending, e("ProductName")
          Group e By Key = New With {
              .ProductName = e("ProductName"),
              .GroupName = e("GroupName")
          } Into Group
          Select New With {
              .ProductName = Key.ProductName,
              .GroupName = Key.GroupName,
              .Sum = Group.Sum(Function(x) x("QTY"))
          })
于 2014-02-02T17:45:27.503 に答える