facebook api的异步功能

时间:2014-07-31 13:14:38

标签: c# .net facebook async-await

我有一个facebook帖子ID列表,例如386050065267_10153256675935268

通过使用以下代码,我获得了所需的结果,如总数,喜欢,分享和评论

foreach (var item in collection)
{
    FacebookClient fb = new FacebookClient(accessToken);
    dynamic result = fb.Get(item.postId, new { fields = "shares,likes.summary(true),comments.summary(true)" });
}

在该代码中是否有使用async的可能性? 我是异步功能的新手,请帮我做正确的代码,感谢所有的想法。

1 个答案:

答案 0 :(得分:5)

是的,根据documentation,有一个async重载:

var client = new FacebookClient(accessToken);
foreach (var item in collection)
{
    var result = await client.GetTaskAsync(item.postId, new {fields = "shares,likes.summary(true),comments.summary(true)"});
    // ...
}

此片段当然必须位于async方法中且具有等待的返回值(即TaskTask<T>