Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从数组元素json c获取项# 如何从数组元素json c#获取项?_C#_Arrays_Json_Listbox - Fatal编程技术网

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

如何从数组元素json c获取项# 如何从数组元素json c#获取项?,c#,arrays,json,listbox,C#,Arrays,Json,Listbox,我想从我的电话中获得多个艺术家的名字,并将它们放在一个列表框中 我可以得到第一个这样的艺术家,等等: 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 = JO

我想从我的电话中获得多个艺术家的名字,并将它们放在一个列表框中

我可以得到第一个这样的艺术家,等等:

    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;
但是我怎样才能得到更多的名字并把它们放在列表框中呢

您可以看到json结果的样子


提前谢谢

你可以试试这样的东西

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

你可以试试这样的

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

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

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

然后,您可以使用listbox.items.add函数调用或使用ItemsSource属性将此列表绑定到listbox。您好,您可以使用下面的代码段获取名称列表

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

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

谢谢您的帮助,我非常感谢。我想我可以这样解决我的问题:

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);
    }
var artistLength=artistData.message.body.artist\u list.Count;
对于(int i=0;i
谢谢你试图帮助我,我真的很感激。我想我可以这样解决我的问题:

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);
    }
var artistLength=artistData.message.body.artist\u list.Count;
对于(int i=0;i
为什么不为您的数据创建一个合适的模型,并使用newtonsoft或您选择的json解析器进行反序列化呢。然后所有艺术家都在一个数组中,您可以使用循环或linq来获取所有艺术家的名称。我认为,从他们的研究中,你可以找出如何将它放在列表框中。为什么不为你的数据创建一个合适的模型,并使用newtonsoft或你选择的json解析器进行反序列化呢。然后所有艺术家都在一个数组中,您可以使用循环或linq来获取所有艺术家的名称。我想从他们的研究中你可以知道如何把它放在一个列表框中。