2013-10-18 71 views
-1

我需要更改以下方法以返回每個包含兩個元素(I.E. [value,date])的數組的JSON字符串數組。目前我有一種方法可以將JSON字符串構建爲一個大的單個數組對象,我怎麼才能將它改爲所需的格式呢? 目前從這個方法返回的JSON看起來像這樣更改方法返回數組的JSON字符串數組

{[{"measurementshortdate": "9/27","value": 99.99,}, {"measurementshortdate": "9/27","value": 104.57,}, {"measurementshortdate": "9/28","value": 232.21,}]} 

這是我使用的是建立它的方法。

public string GetJSONAbbottSeriesData() 
    { 
     System.Text.StringBuilder sb = new System.Text.StringBuilder(); 
     sb.Append("["); 

     foreach (MeasurementGroup m in this.MeasurementTypeGroups[0].MeasurementGroups) 
     { 
      if (sb.ToString() != "[") 
      { 
       sb.Append(", "); 
      } 

      sb.Append("{" + 
       "\"measurementshortdate\": \"" + m.When.ToString("M/dd") + "\"," + 
       "\"value\": " + m.Measurements[0].Value.ToString("0.##") + "," + 
       "}"); 
     } 

     sb.Append("]"); 

     return sb.ToString(); 
    } 

謝謝!

+0

其實現在我正在想它,這可能不可能。 –

+2

嘗試使用Json串行器將對象轉換爲JSON格式。它會更容易! – dave

+0

你有沒有這方面的例子。基本上我只需要得到一個像這樣的字符串'[12/4,5.4],[10/2,2],[9/12,3],[9/19,2]' –

回答

-1

你需要確保你正在作出正確的格式,例如...

{"page":1,"total":1,"records":"2","rows":[ 
    {"group":[{ label: 'child1' }, { label: 'child2' }], 
    "group":[{ label: 'child1' }, { label: 'child2' }], 
    "group":[{ label: 'child1' }, { label: 'child2' }]]} 

以上格式有數據之前的一些功能,因爲在jqGrid的使用,我不得不改變我的JSON格式,因爲我正在使用實體框架,並且他沒有返回正確的格式。

所以你只需要操縱你的字符串來按照你的意願返回數據,在調試模式下檢查你的sb.Append命令,看看返回的格式是否正確。