0

我正在使用 api 来解析 xml 文件中的数据。我可以通过一个 api 调用来解析大部分数据。每个对象都有 Title、source、comment、action、objectkey 和其他我可以轻松解析的属性。但是我还需要一个图像属性。该图像未在 xml 文件中列出,但我可以在第二个 api 调用中使用它来解析图像。如何以某种方式执行此操作,以便我可以绑定到同一个列表框,以便每个对象都具有它们的所有属性,包括来自第二个 api 调用的图像?

有人提到异步可能是要走的路,但我不确定....

XDocument streamFeed = XDocument.Load(new StringReader(response.Content));
                var data = from query in streamFeed.Descendants("interaction")
                           select new Interaction
                           {
                                 title  = (string)query.Element("title"),
                                 displayName = (string)query.Element("displayName"),
                                 action = (string)query.Element("action"),                               
                                 userId   = (string)query.Element("userId"),
                                 objectKey = ((string)query.Element("objectKey")),
                                 timestamp = (string)query.Element("timestamp"),
                                 comment = (string)query.Element("comment"),
                                 source = (string)query.Element("source"),
                                 image =  getImage() ---> I imagine the second api call here


                           };


                streamListBox.ItemsSource = data;



            }
            catch (Exception e)
           {
                MessageBox.Show(e.Message);
            }

        });
    }

    public string getImage(string key)
    {
                    api calls here =>
        {


            try
            {
                //MessageBox.Show(response.Content);
                XDocument streamFeed = XDocument.Load(new StringReader(response.Content));
                var data2 = from query in streamFeed.Descendants("movie")
                           select new Object
                           {
                               image = (string)query.Element("image"),
                           };



                //streamListBox.ItemsSource = data2;


            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
            }



            // MessageBox.Show(image);

        });
        return image;
    }
4

0 回答 0