ある期間内に作成されたすべてのCustomerOrdersを取得し、それらを日ごとにグループ化して(その日の時間に関係なく)、各日のCustomerOrdersの数も含める必要があります。私のChartDateCountクラスには、DateとCountの2つのプロパティがあります。
したがって、SQLデータの例を次に示します。
OrderID Created
1 1/1/2012 04:30:12
2 1/1/2012 05:15:29
3 1/1/2012 07:09:45
4 1/3/2012 01:12:21
5 1/4/2012 06:33:58
6 1/4/2012 08:30:26
7 1/5/2012 10:17:41
8 1/5/2012 11:30:43
9 1/6/2012 01:11:11
そして、私の出力は次のようになります。
Date Count
1/1/2012 3
1/3/2012 1
1/4/2012 2
1/5/2012 2
1/6/2012 1
これは私がこれまでに持っているものです。
Dim chartData as List(Of ChartDateCount) = _
( _
From co In dc.CustomerOrders _
Where co.Created >= fromDate _
And co.Created <= toDate _
Select New ChartDateCount With {.Date = ???, .Count = ???} _
).ToList()
私はこれに少し近づきましたが、日付を入力することができませんでした:
From co In CustomerOrders _
Where co.Created >= "1/1/2012" And co.Created <= "1/7/2012" _
Group co By co.Created.Value.Date Into g = Group _
Select New ChartDateCount With {.Date = ????, .Count = g.Count()}
アップデート
これはまさに私が理論的にやりたいことです(以下を参照)が、このエラーでエラーが発生します:The query operator 'ElementAtOrDefault' is not supported.
From co In CustomerOrders _
Where co.Created >= "1/1/2012" And co.Created <= "1/7/2012" _
Group co By co.Created.Value.Date Into g = Group _
Select New ChartDateCount With {.Date = g(0).Created.Value.Date, .Count = g.Count()}