Twitterizer TwittterTimeline NewtonSoft.JSON.JsonSerializationException проблемы - PullRequest
4 голосов
/ 27 января 2012

Следующий код генерирует исключение NewtonSoft.JSON.JsonSerializationException {"Неожиданный токен при десериализации объекта: StartObject. Строка 1, позиция 1884."}

Версия Twitterizer: 2.4.0.26532 NewtonSoft.Json = 4.0.7.0(устанавливается с помощью надстройки Nu-GET в visual studio)

Есть что-то, чего мне не хватает или не получается?

   class Program
    {
        static void Main(string[] _args)
        {
            Logger.Write("Calling Twitter", Constants.TWITTER_AGREGATOR_LOG_CATEGORY);

            UserTimelineOptions options = new UserTimelineOptions();
            options.ScreenName = "as_tuce2";
            TwitterResponse<TwitterStatusCollection> tweets = TwitterTimeline.UserTimeline(options);   //throws exception


            OAuthTokens tokens = new OAuthTokens();
            tokens.AccessToken = // removed...
            tokens.AccessTokenSecret = // removed...
            tokens.ConsumerKey =  // removed...
            tokens.ConsumerSecret = // removed...

            UserTimelineOptions userOptions = new UserTimelineOptions();
            userOptions.IncludeRetweets = false;
            userOptions.ScreenName = "as_tuce2";
            userOptions.UseSSL = true;
            userOptions.Count = 20;


            TwitterResponse<TwitterUser> showUserResponse = TwitterUser.Show(tokens, "as_tuce2");            //ok
            TwitterResponse<TwitterStatusCollection> timelineResponse = TwitterTimeline.UserTimeline(tokens);  //throws exception


            Console.ReadLine();
        }
    }

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

в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject (Object newObject, считыватель JsonReader, контракт JsonObjectContract, идентификатор строки) в d: \ Development \ Releases \ Json \ Working \ Src \ Newtonsoft.Json \ Serialization \ JsonSerializerInternal:строка 1238 в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateAndPopulateObject (считыватель JsonReader, контракт JsonObjectContract, идентификатор строки) в d: \ Development \ Releases \ Json \ Working \ Src \ Newtonsoft.Json \ Serialization \ JsonSerializeroftternal 9 Читатель:.Json.Serialization.JsonSerializerInternalReader.CreateObject (Средство чтения JsonReader, тип objectType, контракт JsonContract, член JsonProperty, значение ObjectistingValue) в каталоге d: \ Development \ Releases \ Json \ Working \ Src \ Newtonsoft.Json \ Serialization \ JsonSerializerInternalReader.cs: строка 433 в Newtonsoft.Json.Serialization.JsonSerializerInternalRe.CreateValueInternal (считыватель JsonReader, тип objectType, контракт JsonContract, член JsonProperty, объект существующее значение) в d: \ Development \ Releases \ Json \ Working \ Src \ Newtonsoft.Json \ Serialization \ JsonSerializerInternalReader.cs: строка 236 в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueNonProperty (считыватель JsonReader, тип objectType, контракт JsonContract, конвертер JsonConverter) в каталоге d: \ Development \ Releases \ Json \ Working \ Src \ Newtonsoft.Json \ Serialization \ JsonSerializerInternalReader.cs: строка 221JsonSerialSizer.JJ.PopulateList (IWrappedCollection wrappedList, читатель JsonReader, ссылка на строку, контракт JsonArrayContract) в каталоге d: \ Development \ Releases \ Json \ Working \ Src \ Newtonsoft.Json \ Serialization \ JsonSerializerInternalReader.cs: строка 794 в Newtonsoft.Json.Serialization.JsonSerializerInternalReader. <> c_ DisplayClass1. b _0 (IList l, Boolean isTeoraryListReference)в d: \ Development \ Releases \ Json \ Working \ Src \ Newtonsoft.Json \ Serialization \ JsonSerializerInternalReader.cs: строка 744 в Newtonsoft.Json.Utilities.CollectionUtils.CreateAndPopulateList (Тип listType, Action 2 populateList) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\Utilities\CollectionUtils.cs:line 233 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateAndPopulateList(JsonReader reader, String reference, JsonArrayContract contract) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\Serialization\JsonSerializerInternalReader.cs:line 732 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String reference) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\Serialization\JsonSerializerInternalReader.cs:line 495 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\Serialization\JsonSerializerInternalReader.cs:line 238 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueNonProperty(JsonReader reader, Type objectType, JsonContract contract, JsonConverter converter) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\Serialization\JsonSerializerInternalReader.cs:line 221 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\Serialization\JsonSerializerInternalReader.cs:line 117 at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\JsonSerializer.cs:line 421 at Newtonsoft.Json.JsonSerializer.Deserialize(JsonReader reader, Type objectType) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\JsonSerializer.cs:line 413 at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\JsonConvert.cs:line 732 at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\JsonConvert.cs:line 694 at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\JsonConvert.cs:line 651 at Twitterizer.Core.SerializationHelper 1.Deserialize (Byte [] webResponseData, DeserializationHandler deserializationHandler) в Twitterizer.Core.TwitterCommand * (1015 * 1 команда) в Twitterizer.TwitterTimeline.UserTimeline (маркеры OAuthTokens, параметры UserTimelineOptions) в Twitterizer.TwitterTimeline.UserTimeline (параметры пользователя 1017) * 1066

1 Ответ

3 голосов
/ 27 января 2012

Спасибо за публикацию этого. Мне нужно взглянуть на это и выяснить, что изменила новая версия json.net.

Для потомков здесь находится тема форума , где вы также сообщили об ошибке.

...