System.Text.Json - указать свои имена свойств при десериализации JSON
От: Doc Россия http://andrey.moveax.ru
Дата: 12.09.22 04:46
Оценка:
Есть DTO, в который надо десериализовать полученный JSON при помощи System.Text.Json.
Проблема в том, что имена свойств не совпадают с полями JSON.
Конечно, можно указать [JsonPropertyName()], но на модели уже есть атрибуты с указанием имени. Что-то вроде

public class MyModel 
{
    [ExternalName("object_id")]
    pubic int Id { get; }
    ...
}


Не хочется городить что-то вроде
[ExternalName("object_id")]
[JsonPropertyName("object_id")]
pubic int Id { get; }


Равно как и писать свой велосипед для десериализации с нуля в ввиде JsonConverter.
Может быть есть какой-то способ переиспользовать дефолтную реализацию, только с подменой имен свойств.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.