Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
1297 of 1492 menu
◀ ▶

JsonPropertyName

В JSON попадают публичные свойства с get и set, если атрибут не говорит иное. JsonPropertyName переименовывает ключ при Serialize и Deserialize. Скрыть свойство - JsonIgnore.

Синтаксис

using System.Text.Json.Serialization; [JsonPropertyName("jsonName")] public string PropertyName { get; set; }

Пример

Давайте записать свойство под ключом abcde:

using System; using System.Text.Json; using System.Text.Json.Serialization; class Item { [JsonPropertyName("abcde")] public string Name { get; set; } } class Program { static void Main() { string json = JsonSerializer.Serialize( new Item { Name = "x" }); bool res = json.Contains("abcde") && !json.Contains("\"Name\""); Console.WriteLine(res); } }

Результат выполнения кода:

True

Пример

Давайте прочитать значение по ключу abcde:

using System; using System.Text.Json; using System.Text.Json.Serialization; class Item { [JsonPropertyName("abcde")] public string Name { get; set; } } class Program { static void Main() { var item = JsonSerializer.Deserialize<Item>( "{\"abcde\":\"abcde\"}"); string res = item.Name; Console.WriteLine(res); } }

Результат выполнения кода:

"abcde"

Пример

Давайте сериализовать строку abcde:

using System; using System.Text.Json; using System.Text.Json.Serialization; class Item { [JsonPropertyName("abcde")] public string Name { get; set; } } class Program { static void Main() { string res = JsonSerializer.Serialize( new Item { Name = "abcde" }); Console.WriteLine(res); } }

Результат выполнения кода:

{"abcde":"abcde"}

Смотрите также

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить