2015-08-05 22 views
12

Sto cercando di ottenere 200 recenti tweet utilizzando TweetSharp ma restituisce 12 per qualche motivo.Restituisce il numero n recente di tweet utilizzando TweetSharp

var service = new TwitterService(
       _consumerKey, 
       _consumerSecret, 
       tokenClaim, 
       tokenSecret 
       ); 

IAsyncResult result = service.BeginListTweetsOnUserTimeline(new ListTweetsOnUserTimelineOptions { Count = 200} 
IEnumerable<TwitterStatus> tweets = service.EndListTweetsOnUserTimeline(result); 

Qualche idea, perché dovrebbe essere? Grazie

Aggiornamento

seguito How to fetch maximum 800 tweets from ListTweetOnHomeTimeline() method of TweetSharp?

IAsyncResult result = 
      _twitterService.BeginListTweetsOnUserTimeline(new ListTweetsOnUserTimelineOptions { Count = 200 }); 
     IEnumerable<TwitterStatus> tweets = _twitterService.EndListTweetsOnUserTimeline(result).ToArray(); 

     var tweet2 = _twitterService.ListTweetsOnUserTimeline(new ListTweetsOnUserTimelineOptions { Count = 200, MaxId = tweets.Last().Id }); 

     return tweet2; 

tweet2 è vuoto.

risposta

5

TweetSharp è una vecchia libreria e non viene più gestita. È noto che ha problemi di autenticazione, ma è molto probabile che tu stia sbattendo contro un altro problema a causa delle modifiche alle API di Twitter. Non perdere tempo a cercare di risolverlo.

Ti suggerisco di utilizzare la libreria più aggiornata Linq2Twitter che è disponibile anche su NuGet.

Con LinqToTwitter il codice sarà simile:

static async Task<List<Status>> ListTweetsOnUserTimeline(string screenName) 
{ 
    var auth = new SingleUserAuthorizer 
    { 
     CredentialStore = new SingleUserInMemoryCredentialStore 
     { 
      ConsumerKey = consumerKey, 
      ConsumerSecret = consumerSecret, 
      AccessToken = accessToken, 
      AccessTokenSecret = accessTokenSecret 
     } 
    }; 

    using (var context = new TwitterContext(auth)) 
    { 
     var tweets = await (from tweet in context.Status 
          where tweet.Type == StatusType.User && 
            tweet.Count == 200 && 
            tweet.ScreenName == screenName 
          select tweet) 
          .ToListAsync(); 
     return tweets; 
    } 
} 
+0

*** *** Linq2Twitter viene aggiornato? – Kiquenet

+0

Ancora più aggiornato di TweetSharp. L'ultimo pacchetto nuget di Linq2Twitter è da febbraio 2016, quindi è accettabile. Sembra anche che ci sia un nuovo fork di TweetSharp [qui] (https://github.com/Yortw/tweetmoasharp) che potrebbe valere la pena di essere esaminato. –