-4

誰もがこのJSONをドロップダウンに入力する方法を知っています。基本的にはcountry-idと:

data: {
    "1000": {
      "country-id": 1000,
      "name1": {
        "name": "Afghanistan",
      },
    },
    "4000": {
      "country-id": 4000,
      "name1": {
        "name": "Albania",
      }
    }
4

2 に答える 2

0

JSON データをどのように取得しているかはわかりませんが、他の人が示唆しているように、Json.NETなどのライブラリを使用することをお勧めします。ドキュメントから直接取得したいくつかの基本的な実装を次に示します。

シリアライズ/デシリアライズしている場合は、こちらのドキュメントを試してください

Product product = new Product();

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);

データを直接クエリすることに興味がある場合は、これを試してください

JObject o = JObject.Parse(@"{
  'CPU': 'Intel',
  'Drives': [
    'DVD read/writer',
    '500 gigabyte hard drive'
  ]
}");

string cpu = (string)o["CPU"];
// Intel

string firstDrive = (string)o["Drives"][0];
// DVD read/writer

IList<string> allDrives = o["Drives"].Select(t => (string)t).ToList();
// DVD read/writer
// 500 gigabyte hard drive

後者があなたが本当に探しているものだと思います。

于 2012-09-04T19:03:42.693 に答える
0

あなたのjsonは壊れており、多くのjsonパーサーがそれについて文句を言うでしょう.

解析にはJson.Netを使用します。

    string json = @"{data: { ""1000"": { ""country-id"": 1000, ""name1"": { ""name"": ""Afghanistan"", }, }, ""4000"": { ""country-id"": 4000, ""name1"": { ""name"": ""Albania"", } }";

    var countries = ((JObject)JsonConvert.DeserializeObject(json))["data"]
        .Children()
        .Select(x => new
        {
            Id = (int)x.First()["country-id"],
            Name = (string)x.First()["name1"]["name"],
        })
        .ToList();
于 2012-09-04T18:56:18.937 に答える