ServiceStack.Text не обрабатывает JsonIgnore (Условие = JsonIgnoreCondition.WhenWritingNull)C#

Место общения программистов C#
Ответить
Anonymous
 ServiceStack.Text не обрабатывает JsonIgnore (Условие = JsonIgnoreCondition.WhenWritingNull)

Сообщение Anonymous »

Я пытаюсь сериализовать класс Microsoft.AspNetCore.Mvc.ProblemDetails, и он имеет JsonIgnore с условиями для его свойств, таких как Title

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

[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
[JsonPropertyOrder(-4)]
[JsonPropertyName("title")]
public string? Title { get; set; }
Когда я использую ServiceStack.Text для сериализации, заголовок этого объекта опускается, хотя он не равен нулю и содержит действительную строку. Есть ли способ заставить ServiceStack.Text соблюдать эти условия или просто игнорировать JsonIgnore, поскольку я использую IgnoreDataMember для подавления поля при сериализации. Надеюсь, что вам не придется писать собственный сериализатор для этого типа...
Изменить:
Похоже, вы можете подавить JsonIgnore вот так

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

JsConfig.IgnoreAttributesNamed = ["JsonIgnore"];
Однако это также приводит к тому, что IgnoreDataMember перестает работать :( так что это на самом деле не решение, потому что тогда вы не сможете ничего подавить...

Подробнее здесь: https://stackoverflow.com/questions/790 ... ion-whenwr
Ответить

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

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

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

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

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