0

MailChimp の ExportAPI を使用しています。次のように、「ルート」のない Json 文字列を返します。

["Email Address", "First Name", "Last Name"]
["jeff@mydomain.com", "Jeff", "Johnson"]
["tubbs@mydomain.com", "Tubbs", "McGraw"]

角かっこも何もありません - ほんの数個の配列です。それを JArray にロードすると、最初のオブジェクトのみが取得されます。

JArray jsonArray = new JArray.Parse(jsonResponse);
Console.WriteLine(jsonArray);

//Outputs:
//Email Address
//First Name
//Last Name

文字列の内容をデータベースにコピーしたいと考えており、LINQ で応答にアクセスする必要があります。上記のように Json オブジェクトを操作する正しい方法に関する提案はありますか (Json.net を使用するか、それ以外を使用しますか?)

4

2 に答える 2

1

'[' と ']' を追加するだけで、文字列をルート要素で埋めますか?

于 2011-05-23T15:47:50.970 に答える
0

docsに記載されているように、この動作は実際には完全に意図的なものです。その理由は、リストのデータの完全なダンプは簡単に大きすぎて、常にメモリに収まって解析できないからです。そのため、戻り値の形式を考えると、区切り文字として改行を使用し (またはそのようにネットワークから読み取る)、各オブジェクトを個別に解析してから、必要なことを行う必要があります。

私は C#/Linq でそれを行うことに慣れていませんが、ドキュメント ページの PHP の例はまさにそれを行っています。

于 2011-05-24T16:07:26.147 に答える