Значение по умолчанию в JSON в C#
При записи можно пропускать свойства со значением
по умолчанию: для числа это 0, для
логического типа false, для ссылки
null. Имя "main" остаётся, а
Hits, равный 0, не записывается:
using System.Text.Json;
using System.Text.Json.Serialization;
JsonSerializerOptions options = new()
{
DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingDefault
};
string json = JsonSerializer.Serialize(new Stats(), options);
Console.WriteLine(json.Contains("main"));
Console.WriteLine(json.Contains("Hits"));
class Stats { public string Name { get; set; } = "main"; public int Hits { get; set; } }
Первая проверка находит "main". Вторая не
находит Hits: ноль в текст не пишется.
Запишите отчёт с заголовком "Note" и полем
Score, равным 0, пропуская
значения по умолчанию. Выведите 1, если
Score в тексте нет.