Ссылка на объект Twitterizer не установлена - PullRequest
0 голосов
/ 22 февраля 2012

Начал играть с API Twitter и решил использовать библиотеку Twitterizer для взаимодействия с API. В настоящее время, используя тестовый проект для выполнения какой-то простой задачи, я столкнулся с проблемой, о которой я не могу найти никакой информации на форумах или здесь, в стеке.

Настройка

  1. Использование Twitterizer версии 2.4 (NuGet)
  2. Использование NewtonSoft JSON версии 4.0.2 (пришлось отказаться от 4.0.8 из-за проблем с сериализацией)
  3. .Net 4.0 / проект MVC

Вот фрагмент кода, который вызывает исключение:

var token = dbContext.TwitterProfiles.Where(x => x.TwitterId == MySuperSecretId).First();
var oAuthToken = new OAuthTokens
    {
        AccessToken = token.Token,
        AccessTokenSecret = token.Secret,
        ConsumerKey = ConfigurationManager.AppSettings["TwitterConsumerKey"],
        ConsumerSecret = ConfigurationManager.AppSettings["TwitterConsumerSecret"]
    };

TwitterResponse<TwitterStatusCollection> mentionsResponse = TwitterTimeline.RetweetsOfMe(oAuthToken);

Последняя строка выводит исключение Null Ref

Трассировка стека:

   at Twitterizer.Commands.RetweetsOfMeCommand.Init()
   at Twitterizer.Core.CommandPerformer.PerformAction[T](ICommand`1 command)
   at Twitterizer.TwitterTimeline.RetweetsOfMe(OAuthTokens tokens, RetweetsOfMeOptions options)
   at Twitterizer.TwitterTimeline.RetweetsOfMe(OAuthTokens tokens)
   at TwitterTest.Controllers.HomeController.GetRetweets() in C:\Users\Tommy\Documents\Visual Studio 2010\Projects\TwitterTest\TwitterTest\Controllers\HomeController.cs:line 85
   at lambda_method(Closure , ControllerBase , Object[] )
   at System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters)
   at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass15.<InvokeActionMethodWithFilters>b__12()
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation)

Я видел предыдущий вопрос об исключении Null Reference в библиотеке, но эта проблема была в предыдущей версии (2.3.1). Кто-нибудь сталкивался с этим / знает параметр или что-то, что я должен отправить в эту функцию / и т.д.? Я должен сказать, что я успешно использовал функции Timeline.Mentions и User.GetFollowers без проблем, поэтому это говорит о том, что я настроил библиотеку несколько правильно ...

1 Ответ

0 голосов
/ 22 февраля 2012

Хорошо, у меня может быть, но сначала я собираюсь сделать немного больше испытаний.Эта конкретная функция имеет перегруженную версию с RetweetsOfMeOptions в качестве второго параметра, и в моем примере я не использовал эту версию.Однако, если я добавлю эту строку кода:

var options = new RetweetsOfMeOptions {Count = 25, UseSSL = false};

и обновлю свой вызов функции, чтобы использовать перегруженный вызов:

TwitterResponse<TwitterStatusCollection> mentionsResponse = TwitterTimeline.RetweetsOfMe(oAuthToken, options);

Я не получил ошибку.Как только я буду уверен, что это так - я опубликую его на форуме / трекере ошибок в качестве потенциальной проблемы.

...