Search code examples
c#.netservicestackasync-awaitlinq-to-twitter

LinqtoTwitter TweetAsync never returns in ServiceStack App


When using LinqToTwitter the status update gets posted to twitter with no problems, however the route times out and when debugging the if statement after the await line the debugger never reaches that point. What can I do to fix this?

async public Task<object> Post(RetweetPost retweetInfo){

...


var auth = new SingleUserAuthorizer
{
  CredentialStore = new SingleUserInMemoryCredentialStore
  {
    ConsumerKey = "ConsumerKey",
    ConsumerSecret = "ConsumerSecret",
    AccessToken = account.OAuthToken,
    AccessTokenSecret = account.OAuthTokenSecret
  }
};

var twitterCtx = new TwitterContext(auth);

var tweet = await twitterCtx.TweetAsync(retweetInfo.tweet);

//DOES NOT REACH THIS LINE
if (tweet != null)
{
    return new RetweetPostResponse
    {
        twitterTweetId = tweet.StatusID.ToString()
    };
}

Solution

  • I believe the real problem I was facing was the ServiceStack Framework. As discussed here. Apparently async functions on routes were not supported until ServiceStack 4.