2015-12-04 41 views
0

我開始嘗試使用Linq到Twitter庫來查詢一些twitter數據。我有如下功能:如何在UAP中使用LinqToTwitter?

public static async Task<List<Status>> GetTweets(TwitterContext context, string searchQuery, int count = 15) 
    { 
     var searchResult = await 
      (from search in context.Search 
      where search.Type == SearchType.Search && 
        search.Query == searchQuery && 
        search.IncludeEntities == true && 
        search.Count == count 
      select search) 
      .SingleOrDefaultAsync(); 

     return searchResult.Statuses; 
    } 

並在控制檯應用程序的功能,我創建調用這個函數是這樣的:

IAuthorizer authorizer = new ApplicationOnlyAuthorizer 
     { 
      CredentialStore = new InMemoryCredentialStore 
      { 
       ConsumerKey = consumerKey, 
       ConsumerSecret = consumerSecret, 
      } 

     }; 
     authorizer.AuthorizeAsync().Wait(); 
     TwitterContext context = new TwitterContext(authorizer); 
     List<Status> statuses = GetTweets(context, "#hashtag", 50).Result; 

這完美的作品。但是,如果我將其遷移到通用Windows應用程序,那麼它永遠掛在List<Status> statuses = GetTweets(context, "#hashtag", 50).Result;。沒有異常發生,什麼也沒有顯示,沒有任何回報。我用錯了嗎?

回答

1

LINQ to Twitter v3.x及更早版本的版本不適用於UAP應用程序。他們會產生你現在遇到的同樣的行爲。您必須升級到最新版本,該版本處於預發行版。

這是LINQ to Twitter的預發佈版本,v4.0。除了其他技術外,其主要目的是包括對UAP的支持:

http://www.nuget.org/packages/linqtotwitter/4.0.0-beta2