2011-09-09 3 views
0

私のコントローラには、特定のURLがヒットしたときに必ずJsonレスポンスを生成する次のコードがあります。Jsonレスポンスに配列名を含めるにはどうすればいいですか?

public JsonResult LatLng() 
    { 
     var zones = zoneRepository.GetCoordinates().ToList(); 

     return Json(zones, JsonRequestBehavior.AllowGet); 
    } 

出力は次のようになります。

[{"Zip_Code":1001,"City":"Agawam","DMA":"SPRINGFIELD, MA"},... 

私の質問は次のとおりです。 Json配列の前に配列名はないはずですか?例えば:私はjqueryのを使用して、これを解析する場合

{"zones":[{"Zip_Code":... 

私は(json.zonesはので、私はジェイソン応答で配列名を含める方法を思ったんだけど$ .eachの線に沿って何かを使用する必要が感謝! json.orgから

答えて

2

return Json(new { zones = zones }, JsonRequestBehavior.AllowGet); 
+0

+1 - 正しい出力が得られるはずです。 – Fenton

+0

はい。私はちょうどそれをテストし終わった。ありがとうございました!! – hughesdan

0

この例の出発点として、この例を使用して...

{"menu": { 
    "id": "file", 
    "value": "File", 
    "popup": { 
    "menuitem": [ 
     {"value": "New", "onclick": "CreateNewDoc()"}, 
     {"value": "Open", "onclick": "OpenDoc()"}, 
     {"value": "Close", "onclick": "CloseDoc()"} 
    ] 
    } 
}} 

を明確に役立つかもしれない、私はあなたがこれを行うだろうと言うでしょうが(ゾーンを想像異なるました!):

{"zones": [ 
     {"Zip-Code": "1001", "City": "Agawam", "DMA": "SPRINGFIELD, MA"}, 
     {"Zip-Code": "1001", "City": "Agawam", "DMA": "SPRINGFIELD, MA"}, 
     {"Zip-Code": "1001", "City": "Agawam", "DMA": "SPRINGFIELD, MA"} 
    ] 
} 
+0

ゾーンを試すコレクションです。この例では、Agawamは配列内の単一のゾーンを表します。 – hughesdan

0
JSONObject title = new JSONObject(); 
JSONObject main = new JSONObject(); 

title.put("zone", main); 
main.put("Zip Code", value); 
main.put("City", value); 
........ 
関連する問題