私はオブジェクトを格納するために、Entity Frameworkを使用してVB.NETとASP.NETで請求システムを作成しています。特定の月のすべての請求可能な広告申込情報をまとめ、請求書に照合させます。SQL GROUP BYステートメントからEntity FrameworkでGROUP BYクエリを実行
SQLクエリ:
SELECT DISTINCT
[database].[dbo].[WorkOrderDetails].PriceCodeID,
[database].[dbo].[WorkOrderDetails].[Description],
SUM([database].[dbo].[WorkOrderDetails].[Quantity]) AS [Quantity],
SUM([Subtotal]) AS Subtotal,
SUM([Total]) AS Total
FROM
[database].[dbo].[WorkOrderDetails]
INNER JOIN
[database].[dbo].[WorkOrders] ON [database].[dbo].[WorkOrderDetails].[WorkOrderID] = [database].[dbo].[WorkOrders].[WorkOrderID]
WHERE
[ClientID] = 182
AND [WorkOrders].[Date] >= '10/1/2016'
AND [WorkOrders].[Date] < '10/31/2016'
GROUP BY
[PriceCodeID], [Description]
このクエリの出力は次のようになります。
次のSQLクエリは、しかし、私はそれがEntity Frameworkのコード - 最初に働いて得ることができない、これを実現しますPriceCodeID | Description | Quantity | Subtotal | Total
------------+-------------+----------+----------+--------
26 BOX REFILE 19 47.50 47.50
28 BOX RETRIEVAL 15 37.50 37.50
98 Del/Pu Out 376 545.20 545.20
95 Shredding 16893 760.19 760.19
私のオブジェクトは、次のとおりです。
WorkOrder
:WorkOrderID、ダットE、(WorkOrderDetail
の)(外部キー)、一覧にWorkOrderDetail
をCLIENTID:WorkOrderDetailID、PriceCodeID (外部キー)、説明、単価、数量、小計、消費税、合計、WorkOrderID (外部キー)PriceCode
:PriceCodeID、ショート、説明、単価、税
私は目を使用しようとしていますeステートメントを使用しますが、GroupBy
ステートメントの使用方法は不明です。
newInvoice.Details = _db.WorkOrderDetails
.Include("WorkOrder")
.Where(Function(wod) wod.WorkOrder.Date >= newInvoice.StartDate And
wod.WorkOrder.Date < newInvoice.EndDate And
wod.WorkOrder.ClientID = newInvoice.ClientID)
.GroupBy(...)
.ToList()