2014-02-11 35 views
2

我詢問我家的狀態回來了。但是,我發現每個推文的ID都沒有設置。爲什麼ID沒有被linqtotwitter

 var auth = new MvcAuthorizer 
     { 
      CredentialStore = new SessionStateCredentialStore() 
      { 
       ConsumerKey = TwitterConfig.ConsumerKey, 
       ConsumerSecret = TwitterConfig.ConsumerSecret, 
       OAuthToken = TwitterConfig.AccessToken, 
       OAuthTokenSecret = TwitterConfig.AccessTokenSecret 
      } 
     }; 

     var twitterCtx = new TwitterContext(auth); 

     var tweets = 
       await (from tweet in twitterCtx.Status 
       where tweet.Type == StatusType.Home 
       select tweet) 
       .ToListAsync(); 

爲什麼沒有填充推文的ID?

我注意到http://linqtotwitter.codeplex.com/wikipage?title=Status%20Entity的文檔頁面上,它指出字段由用戶填充,而不是由Twitter。我不確定這是什麼意思,因爲ID是由twitter返回的。

我最終的結果實際上將是讓每一個這些狀態的透過oEmbed飼料,所以如果有一個更簡單的方式實現這一目標,然後讓我知道。

回答

3

從Twitter推特ID將在Status實體的StatusID屬性。檢查您的tweets變種中的字段。

我認爲LinqToTwitter開發人員 的意圖可能是允許消費者(您/您的代碼)爲您的推文分配您自己的內部 ID。想不到任何其他原因,爲什麼他們會在同一個 Status實體中有另一個ID字段,令人困惑。 如下(見這個答案的評論)。

ID是某些查詢的輸入,輸出的是StatusID。這使得在從覆蓋呼叫者輸入 參數Twitter的響應 返回值。

- 喬梅奧(LinqToTwitter顯影劑)

+2

ID是對一些查詢的輸入端和StatusID被輸出。這將保留Twitter的響應中覆蓋調用者輸入參數的返回值。 –

+0

謝謝澄清。我用你的反饋更新了答案。 – Shiva