注:もともとJSON.NETを使用してJSONを解析することを考えていたので、この質問の祖先である同様の質問を投稿しましたが、組み込みのデシリアライザーを使用しているため、別の質問です。
これが私がやろうとしていることです: たとえば、Item というクラスがあります。json には多くの「要素」があり (そう呼ばれている場合は、Item クラスを模倣しています)、それぞれに id という名前の整数、name という名前の文字列、および creationTime という名前の日時の 3 つのフィールドが含まれています。これらすべてのアイテムの「要素」をjsonからアイテムオブジェクトのリストに解析したいと思います。JSON と一致するように、Item クラスに 3 つのフィールドを作成しました。
これは私が現在やっていることです:
JavaScriptSerializer ser = new JavaScriptSerializer();
List<Item> items = ser.Deserialize<Item>(new StreamReader(response.GetResponseStream()).ReadToEnd());
<superapi.Item
ただし、「タイプ 'superapi.Item' を 'System.Collections.Generic.List >'に暗黙的に変換できない」ため、これは機能しません。したがって、JSON には Item アーキテクチャの多くの要素があるため、この問題にアプローチする方法がわかりません。これを foreach ループで実行し、JSON で逆シリアル化された各アイテムを見つけて、それをリストに追加し、ループを続行することは何とか可能ですか? いくつかの同様のコードでそれを実行しようとしており、結果を投稿します。
ありがとう!
更新: JSON の一部は次のようになります。
[{
"Id": 1,
"Name": "First item name",
"creationTime": "\/Date(1247258293690)\/"
},
{
"Id": 2,
"Name": "Second item name",
"creationTime": "\/Date(1247088323430)\/"
}]
これは私の Item クラスがどのように見えるかです:
public class Item
{
public int Id { get; set; }
public string Name { get; set; }
public DateTime creationTime { get; set; }
}