2013-03-31 19 views
37

私はJson.Netを使って配列を解析しています。私がしようとしているのは、名前/値のペアを配列から取り出し、JObjectを解析する際に特定の変数にそれらを割り当てることです。Json.Netを使用したJSON配列の解析

[ 
    { 
    "General": "At this time we do not have any frequent support requests." 
    }, 
    { 
    "Support": "For support inquires, please see our support page." 
    } 
] 

そして、ここでは、私はC#で持っているものです::

WebRequest objRequest = HttpWebRequest.Create(dest); 
WebResponse objResponse = objRequest.GetResponse(); 
using (StreamReader reader = new StreamReader(objResponse.GetResponseStream())) 
{ 
    string json = reader.ReadToEnd(); 
    JArray a = JArray.Parse(json); 

    //Here's where I'm stumped 

} 

私はJSONとJson.Netにかなり新たなんだ。ここ

は、私は、配列に持っているものです、それは誰かのための基本的な解決策かもしれません。私は基本的には、フロントエンドでデータを出力できるように、foreachループで名前と値のペアを割り当てる必要があります。誰もこれを前にしたことがありますか?

あなたは、このようなデータ値で取得することができます

答えて

86

string json = @" 
[ 
    { ""General"" : ""At this time we do not have any frequent support requests."" }, 
    { ""Support"" : ""For support inquires, please see our support page."" } 
]"; 

JArray a = JArray.Parse(json); 

foreach (JObject o in a.Children<JObject>()) 
{ 
    foreach (JProperty p in o.Properties()) 
    { 
     string name = p.Name; 
     string value = (string)p.Value; 
     Console.WriteLine(name + " -- " + value); 
    } 
} 

フィドル:https://dotnetfiddle.net/uox4Vt

+3

あなた岩...この1つはどのようにすることができますあなたが私に言うことができる、 – johngeek

+1

のためにそれをやりました私は応答ですべてのデータを取得/読み込みます。私の価値は「クローズド」であり、レスポンスから80の値をリストとして持つことを意味します。その値にはどのようにアクセスできますか?お願い助けて。 – JSHunjan

+0

卿を助けた私 – tpbafk

関連する問題