Анализ типа версии с помощью Json.NET во время десериализации вызывает ошибкуC#

Место общения программистов C#
Ответить
Anonymous
 Анализ типа версии с помощью Json.NET во время десериализации вызывает ошибку

Сообщение Anonymous »

У меня есть модель, которую я сериализовал с помощью Json.NET, однако при десериализации я получаю сообщение об ошибке при попытке проанализировать свойство типа Version.
Сериализованный JSON приведен ниже:

Код: Выделить всё

{
"Releases": [
{
"Id": "01GPM6T600TCF9NJXXG6WHPSZP",
"Description": "Description",
"InformativeVersion": "v320",
"InformativeReleaseDate": "2024-05-17T00:00:00",
"Version": {
"Major": 320,
"Minor": 0,
"Build": 0,
"Revision": -1,
"MajorRevision": -1,
"MinorRevision": -1
},
"BinaryUrl": "",
"BinarySha256": ""
},
{
"Id": "01GMKTW700BGT0YHN99T1GXS6P",
"Description": "Description",
"InformativeVersion": "v309",
"InformativeReleaseDate": "2024-04-03T00:00:00",
"Version": {
"Major": 309,
"Minor": 0,
"Build": 0,
"Revision": -1,
"MajorRevision": -1,
"MinorRevision": -1
},
"BinaryUrl": "",
"BinarySha256": ""
}
]
}
Ошибка, которую я получаю, приведена ниже:

Код: Выделить всё

Newtonsoft.Json.JsonSerializationException: 'Unexpected token or value when parsing version. Token: StartObject, Value:. Path 'Releases[0].Version', line 8, position 18.'
Объект C# выглядит следующим образом:

Код: Выделить всё

public class ReleaseManifest
{
public Release[] Releases { get; set; }
}

public class Release
{
public string Id { get; set; }
public string Description { get; set; }
public string InformativeVersion { get; set; }
public DateTime InformativeReleaseDate { get; set; }
public Version Version { get; set; }
public string BinaryUrl { get; set; }
public string BinarySha256 { get; set; }
}
Мы приветствуем любые идеи о том, как устранить эту ошибку.

Это отличается от предлагаемого связанного вопроса. поскольку я попробовал ответ там, и он тоже не работает.
Я бы предпочел не писать для этого собственный сериализатор.


Подробнее здесь: https://stackoverflow.com/questions/785 ... s-an-error
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»