Поиск по 'Newtonsoft.Json.JsonReaderException: Additional text encountered after finished reading JSON content: {. Path '', ...'
находит не менее 3 SO вопросов, все из которых были прослежены до недопустимого Json.JObject.Parse throws error on valid Json
Я пробовал 3 разных валидаторы на:
[{"Imported": "This registration imported on: 06/20/2016"},{"ContactInfoUpdated": " Street Address2: Suite 222 to Shipping Address2: "}]
и все три доклада он действительным. И все же ошибка времени выполнения подбрасывает то же 'Дополнительного текста встречается ...:
if (!string.IsNullOrWhiteSpace(UserComments))
{
JToken addresses;
addresses = JObject.Parse(UserComments).GetValue("CarbonCopy"); //errors here
if (!ReferenceEquals(null, addresses))
{
//stuff
}
}
Чтобы установить, что нет непреднамеренных символов после JSON закрывается, вот SQL:
UPDATE dbo.[Order] SET UserComments = '[{"Imported": "This registration imported on: 06/20/2016"},{"ContactInfoUpdated": " Street Address2: Suite 222 to Shipping Address2: "}]' WHERE idOrder =121050
Ваших JSON * * действителен, однако он представляет собой массив из двух объектов, а не одного объекта. Следовательно, 'JObject.Parse' не может использоваться для его анализа. Вместо этого попробуйте использовать 'JArray.Parse' или' JToken.Parse'. Вероятно, вам также придется внести другие изменения в свой код; кажется, что вы ожидаете одного объекта, содержащего значение «CarbonCopy», но у вас есть два объекта, и ни одно из них не обладает этим свойством. Из вашего вопроса не совсем ясно, что вы на самом деле пытаетесь сделать здесь. –
Просто стараюсь избегать этой ошибки - оцените перенаправление. – justSteve