これが私がやろうとしていることです: 私の ASP.NET Web API は、チャートの「id」、「startTimestamp」、および「endTimestamp」をクライアントから受け入れます。startTimestamp と endTimestamp で定義されたタイムスタンプ範囲内にある "MeasureData" (添付の EF5 概念モデル図を参照) のみを選択するには、Web API が必要です。私の Web API は、JSON AmSerialChart オブジェクト グラフをクライアントに返します。次に、JSON オブジェクト グラフを解析し、amCharts Javascript API を使用してグラフを作成します。グラフには、startTimestamp と endTimestamp の間のデータのみが表示されます。
コントローラーで、MeasureData をフィルター処理し、フィルター処理された MeasureData を含む AmSerialChart オブジェクトを返す LINQ 式を記述する方法がわかりません。
失敗した試みの 1 つを次に示します。
AmSerialChart amserialchart =
(AmSerialChart)db.AmSerialCharts
.Find(id)
.Graphs
.Select(g => g.Measure)
.SelectMany(m => m.MeasureData)
.Where(md => md.Timestamp >= startDate && md.Timestamp <= endDate);
「db.AmSerialCharts.Find(id)」は適切なチャート エンティティを見つけますが、オブジェクト グラフの残りの部分をナビゲートして MeasureData フィルターに到達する方法がわかりません。