0

C#で次のJSON出力を読み取るのに問題があります。私はJSON構文にあまり精通していませんが、適切にフォーマットされていないようです。または、データを適切に逆シリアル化する方法がわかりません。

配列([ラベル] =>Column_Name[列]=>column0)

15 0

配列([0] => 0 [1] =>配列()

[2] => 0 ) {"total":0,"entities":[],"page":0}

C#で使用されるコードは単純です。

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = WebRequestMethods.Http.Get;
request.Accept = "application/json";
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
Encoding enc = Encoding.GetEncoding(1252);
StreamReader configStream = new StreamReader(response.GetResponseStream(), enc);
var configuration = configStream.ReadToEnd();
JavaScriptSerializer jSerialize = new JavaScriptSerializer();
List[] operations = jSerialize.Deserialize<List[]>(configuration);

私が受け取っているエラーは、「配列」が有効なJSONプリミティブではないということです。JSON出力から構文正しいと仮定して、データを非リアル化するにはどうすればよいですか?

4

2 に答える 2

0

コードは正しいJSON入力で機能するはずです。正しいjsonである入力の唯一の部分は次のとおりです。{"total":0,"entities":[],"page":0}

于 2012-05-22T23:21:12.920 に答える
0

私のSilverlightプロジェクトの1つで、これを実行しました。

using Newtonsoft.Json; //add this library to refferences

ObservableCollection<MyClass> list = JsonConvert.DeserializeObject<ObservableCollection<MyClass>>(json)

この助けを願っています。

于 2012-05-22T23:23:57.927 に答える