JsonNamingPolicy
JsonNamingPolicy.CamelCase.ConvertName
для "Name" даёт "name".
SnakeCaseLower.ConvertName
для "ItemCount" даёт "item_count".
Политику подключают через
PropertyNamingPolicy.
Синтаксис
string name = JsonNamingPolicy.CamelCase.ConvertName("Name");
Пример
Давайте преобразовать имя в camelCase:
using System;
using System.Text.Json;
class Program
{
static void Main()
{
string res = JsonNamingPolicy.CamelCase.ConvertName("Name");
Console.WriteLine(res);
}
}
Результат выполнения кода:
"name"
Пример
Давайте преобразовать имя в snake_case:
using System;
using System.Text.Json;
class Program
{
static void Main()
{
string res = JsonNamingPolicy.SnakeCaseLower.ConvertName("ItemCount");
Console.WriteLine(res);
}
}
Результат выполнения кода:
"item_count"
Пример
Давайте сериализовать объект с camelCase:
using System;
using System.Text.Json;
class Item
{
public string Name { get; set; }
}
class Program
{
static void Main()
{
var options = new JsonSerializerOptions
{
PropertyNamingPolicy = JsonNamingPolicy.CamelCase
};
Item item = new Item { Name = "abcde" };
string res = JsonSerializer.Serialize(item, options);
Console.WriteLine(res);
}
}
Результат выполнения кода:
{"name":"abcde"}
Смотрите также
-
PropertyNamingPolicy,
политика в настройках -
PropertyNameCaseInsensitive,
регистр при чтении -
JsonSerializerOptions,
объект настроек -
Serialize,
запись JSON