如何从数组元素json c中获取项目#

时间:2016-06-15 15:17:49

标签: c# arrays json listbox

如何从数组元素json c?

中获取项目

我希望从通话中获取多个艺术家姓名,并将其放入列表框中。

我可以得到像这样的第一位艺术家:

    string url = @"http://api.musixmatch.com/ws/1.1/artist.search?apikey=key&q_artist=LMFAO&format=json";
    string content = new WebClient().DownloadString(url);
    dynamic artistData = JObject.Parse(content); 
    string artistName = artistData.message.body.artist_list[0].artist.artist_name;

但我如何获得更多名称并将其放入列表框?

Here你可以看到json结果是怎样的

提前致谢

3 个答案:

答案 0 :(得分:0)

你可以试试这样的事情

var artists = artistData.message.body.artist_list.Select(x => x.artist);
foreach (var artist in artists)
{
    var artistName = artist.artist_name;
    listBox.Items.Add(new ListBoxItem(artistName , artistName));
}

答案 1 :(得分:0)

您好,您可以使用以下代码段获取名称列表

var artistNames = artistData.message.body.artist_list.Select(var=>var.artist.artist_name).ToList();

然后,您可以使用listbox.items.add函数调用或使用ItemsSource属性将此列表绑定到列表框

答案 2 :(得分:0)

感谢您试图帮助我,我真的很感激。我想我可以像这样解决我的问题:

var artistLength = artistData.message.body.artist_list.Count;
    for (int i = 0; i < artistLength; i++)
    {
         var artistName = artistData.message.body.artist_list[i].artist.artist_name;

         //printed in the console for testing
         Console.WriteLine(artistName);
         listBox1.Items.Add(artistName);
    }