繁体   English   中英

使用Json.net C#将Json反序列化为列表

[英]Deserialize Json into list using Json.net C#

我有一个JSON数据( http://country.io/names.json ),例如:

{"BD": "Bangladesh", "BE": "Belgium", "BF": "Burkina Faso", "BG": "Bulgaria", "BA": "Bosnia and Herzegovina", "BB": "Barbados" }

我想列出该json,例如CountryCode-CountryName(BD-Bangladesh)。 我该如何在Windows窗体应用程序上做到这一点。

您可以将JSON反序列化为Dictionary而不是单个对象。 这使您可以访问所有代码和名称,如下所示:

var json = @"{""BD"": ""Bangladesh"", ""BE"": ""Belgium"", ""BF"": ""Burkina Faso"", ""BG"": ""Bulgaria"", ""BA"": ""Bosnia and Herzegovina"", ""BB"": ""Barbados"" }";

var dict = JsonConvert.DeserializeObject<Dictionary<string, string>>(json);

foreach (var item in dict)
{
    var countryCode = item.Key;
    var countryName = item.Value;

    // do whatever you want to do with those two values here
    Console.WriteLine("CountryCode: {0} CountryName: {1}", countryCode, countryName);
}

在该代码中,它只是将其写入屏幕,但是很显然,一旦有了该循环,就可以使用国家/地区代码和名称进行任何操作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM