Я пытаюсь десериализовать JSON в список ReportVersandLogDtos с System.Text.Json.JsonSerializer
var reportVersandLogsAsync = JsonSerializer.Deserialize<List<ReportVersandLogDto>>(content, new JsonSerializerOptions {
PropertyNameCaseInsensitive = true,
IgnoreNullValues = true
});
Содержимое выглядит так:
[
{
"AnzahlArtikel": 6,
"Betreff": "Cupra Daily News",
"ReportId": 379717,
"ReportVersandLogId": 4244138,
"VersendetAm": "2019-11-02T06:30:15.997",
"Link": "foo"
}
]
ReportVersandLogDto выглядит следующим образом:
[JsonObject]
public class ReportVersandLogDto : IResource
{
[JsonProperty("anzahlArtikel")]
public long AnzahlArtikel { get; set; }
[JsonProperty("betreff")]
public string? Betreff { get; set; }
[JsonProperty("hasBeenRead")]
public bool HasBeenRead { get; set; }
[JsonProperty("reportId")]
public long ReportId { get; set; }
[JsonProperty("reportVersandLogId")]
public long ReportVersandLogId { get; set; }
[JsonProperty("versendetAm")]
public string? VersendetAm { get; set; }
//[JsonProperty("link")]
//public string? Link { get; set; }
}
К сожалению, я получаю исключение NullPointerException при вызове метода JsonSerializer.Deserialize
.
Ссылка на объект не установлена на экземпляр объекта.
Я не уверен, что я делаю неправильно ... не могли бы вы указать мне правильное направление?
Минимальный воспроизводимый пример:
(Это ядро .netКонсольное приложение 3.0)
Я уже разместил весь ReportVersandLogDto выше (он использует атрибуты из Newtonsoft.Json)
class Program
{
static void Main(string[] args)
{
var content = "\"[{\\\"AnzahlArtikel\\\":6,\\\"Betreff\\\":\\\"Cupra Daily News\\\",\\\"ReportId\\\":379717,\\\"ReportVersandLogId\\\":4244138,\\\"VersendetAm\\\":\\\"2019-11-02T06:30:15.997\\\",\\\"Link\\\":\\\"foo\\\"}]\"";
var reportVersandLogsAsync = JsonSerializer.Deserialize<List<ReportVersandLogDto>>(content, new JsonSerializerOptions {
PropertyNameCaseInsensitive = true,
IgnoreNullValues = true
});
}
}