2

ここでは「配列」と「オブジェクト」の両方が適切な用語ではないかもしれませんが、私の大陸移動は理解できたと思います。

公式ドキュメントからカスタムオブジェクトをシリアライズ/デシリアライズするためのこの例を見ます:

 product.Name = "Apple";
 product.ExpiryDate = new DateTime(2008, 12, 28);
 product.Price = 3.99M;
 product.Sizes = new string[] { "Small", "Medium", "Large" };

 string output = JsonConvert.SerializeObject(product);
 //{
//  "Name": "Apple",
//  "ExpiryDate": "2008-12-28T00:00:00",
//  "Price": 3.99,
//  "Sizes": [
//    "Small",
//    "Medium",
//    "Large"
//  ]
//}

Product deserializedProduct = JsonConvert.DeserializeObject<Product>(output);

しかし、JSON 要素としてのオブジェクトの「配列」を逆シリアル化する必要があります。

IEnumerable<Platypus> deserializedProduct = JsonConvert.DeserializeObject<Platypus>(output);

...また:

List<Platypus> deserializedProduct = JsonConvert.DeserializeObject<Platypus>(output);

これを実現するには、右側の JsonConvert/JSON.NET 側で何が必要ですか?

4

1 に答える 1

7

なぜこのようなものではありません:

List<Product> deserializedProduct = JsonConvert.DeserializeObject<List<Product>>(object);
于 2013-12-11T20:36:36.047 に答える