2011-06-03 18 views
0

我正在嘗試使用TweetSharp訪問推文對話歷史記錄。如何使用TweetSharp訪問推文歷史對話?

要求就像是,如果我使用一個推特項目的ID,它應該返回我之前的推文項目之前的整個線程。

但找不到通過TwittertService暴露的此類方法,其中 我可以通過當前的Tweet _id並獲取對話詳細信息。

我跟着以下的方法來獲取集合(列表)即

List<TwitterStatus> list = new List<TwitterStatus>(); 


private void GetReplied(TwitterStatus twitter, TwitterResponse twitterResponse) 
{ 
    if (twitter.InReplyToStatusId != null) 
    { 
     long statusID = (long)twitter.InReplyToStatusId; 
     this.ts.GetTweet(statusID, (twitterRecursive, 
            twitterResponseRecursive) => 
            { 
             list.Add(twitterRecursive); 
             if (twitter.InReplyToStatusId != null) 
             { 
              this.GetReplied(twitterRecursive, 
                  twitterResponseRecursive); 
             } 
            }); 
    } 
    else 
    { 
     Debug.WriteLine(list.Count); 
     foreach (TwitterStatus status in list) 
     { 
      Debug.WriteLine(status.Text); 
     } 
    } 
} 

this.ts.GetTweet(<tweet Id>, twitterResponse) => 
{ 
     list.Add(twitter); 
     this.GetReplied(twitter, twitterResponse); 
}); 

只想有你的意見,這一點。我們是否有任何這樣的方法 與TweetSharp或任何其他方法可以實施?

非常感謝您的幫助。

回答

0

是的,這就是你必須這樣做的:從推文開始,步行到in_reply_to_status_id鏈。

我做的一件事,雖然它可能不適用於你,但在從Twitter獲取推文之前檢查本地緩存中的推文,看看我是否已經取回了正在回覆的推文。

對於使這更容易的圖書館,我不知道任何。無論他們是否公開了更簡化的方法,在他們的封面下,他們仍然必須執行您在代碼中實現的過程。

要了解其他庫如何接近此任務,請參閱this Twitterizer sample