获取Twitter时间轴作为XML/JSON,显示在Windows 8应用程序

本文关键字:显示 Windows 应用程序 JSON 时间 Twitter XML 获取 | 更新日期: 2023-09-27 17:50:44

我目前正在学习如何在c#中使用LINQ向XML显示Twitter提要的教程。然而,看到微软已经取代了WebClientHTTPClient,我不确定如何继续我的追求集成到我的Windows 8应用程序。教程:http://www.codeproject.com/Articles/117614/How-to-query-twitter-public-status-using-LINQ-to-X

事情是,我"一半"习惯于DownloadStringCompleted,我认为这不是在HTTPClient api。因此,在搜索了一段时间的async/await功能后,我将我的一些知识与我找到的一些教程和片段混合在一起,但我最终得到的将不起作用:

    public async Task<XElement> GetXmlAsync()
    {
        var client = new HttpClient();
        var response = await client.GetAsync("http://api.twitter.com/1/statuses/user_timeline.xml?screen_name=VladimirPutin");
        var text = response.Content.ReadAsStringAsync();
        return XElement.Parse(text.Result);
        XElement xmlTweets = XElement.Parse(text.Result);
        listboxTweetsSecond.ItemsSource = from tweet in xmlTweets.Descendants("status")
                                          select new UserTweet
                                          {
                                              UserImageSrc = tweet.Element("user").Element("profile_image_url").Value,
                                              UserMessage = tweet.Element("text").Value,
                                              UserName = tweet.Element("user").Element("screen_name").Value
                                          };
    }

(是的,Twitter用户名只是一个占位符)
我不需要一个完整的代码作为答案,但我喜欢它,如果有人能指出我应该从这里走,以及我应该做什么一般,因为这(当然)不工作(在,它不显示任何东西,当我运行它/调试模式)。

获取Twitter时间轴作为XML/JSON,显示在Windows 8应用程序

注释掉这一行

return XElement.Parse(text.Result);

,它应该可以工作。

这样做(即你不再返回一个XElement),你可能可以改变方法签名顶部返回只是一个任务。

public async Task GetXmlAsync()
{
    // method body
}