我正在尝试异步下载一些 twitter 信息,它阻塞了 UI 线程。我正在使用 LinqToTwitter (http://linqtotwitter.codeplex.com/) 下载信息。
这是对任务的调用
PublicTweetListBox.ItemsSource = await getTweets(twitterCtx);
这是任务本身
async Task<List<TweetViewModel>> getTweets(TwitterContext twitterCtx)
{
var tweetList = await Task.FromResult<List<TweetViewModel>>(
(from tweet in twitterCtx.Status
where tweet.Type == StatusType.User
&& tweet.ScreenName == UserName.Text
select new TweetViewModel
{
Name = tweet.User.Name,
Tweet = tweet.Text,
ImageUrl = tweet.User.ProfileImageUrl
})
.ToList());
return tweetList;
}
我在等待下载列表的方式上做错了,如果有帮助的话,TweetViewModel 是一种自定义类型。