我想從我的程序中的谷歌圖表數據庫中獲取數據。我想創建的,而不是一遍一遍的重複我的代碼匿名類型(VAR)的數組:創建一個匿名類型的數組
public JsonResult GetChartData(int sID, int regionID)
{
var testPathOne = from p in _rep.GetMetricsData().GetLHDb().page_loads
where p.t_3id == sID && p.test_path_id == 1
select new { time = p.time, created_at = p.created_at };
var testPathTwo = from p in _rep.GetMetricsData().GetLHDb().page_loads
where p.t_3id == sID && p.test_path_id == 2
select new { time = p.time, created_at = p.created_at };
var tOne = testPathOne.ToArray();
var tTwo = testPathTwo.ToArray();
var name = new { test1 = tOne, test2 = tTwo };
return Json(name);
}
我知道我需要一個for循環,所以我可以去通過所有的測試路徑的ID,而不是硬編碼他們這樣p.test_path_id == 1
,但我的問題是如何將使得這部分動態var name = new { test1 = tOne, test2 = tTwo };
編輯: 我道歉,我願意做這樣的事情:
name is an array
for loop:
testPath = query
name.Add(testPath)
我希望有道理
你是什麼意思「使這部分動態」?動態以什麼方式?真的不清楚你想要達到什麼。如果你正在尋找動態屬性名稱,你可以看看'ExpandoObject',但我認爲你最好直接構建JSON ...... –
我不明白這個問題。只要仔細檢查,'var'只能用於編譯器可以在編譯時完全確定**的情況**'var'代表的類型。如果直到運行時才能確定類型,則可以考慮使用'dynamic',但我不確定這是如何適合這種特殊情況的。 – sblom
我想他想把這兩個列表返回給單個json。 –