Неа
Видимо нельзя, если эксшепн падает
ну а как ты в приватный сеттер значение присвоишь?
я думал, десериализатор насильно значения устанавливает в обход инкапсуляций
Щас бы все классы делали, что хотят...
newtonsoft десериализует кста
текст жсон переделывали же вроде, вставили туда фишки невтонсофта
ну видимо контракт резолвер не тащили этот
Легко. Рефлексией
System.Text.Json умеет работать с конструкторами при соблюдении правил нейминга. Вот такое должно сработать (не тестил): public A(int val) { Val = val; }
Тебе надо нормально конструктор оформить. Тогда десериализатор будет знать куда значения записывать
Рефлексия делает брррр
ну да) оказ ся нейминг влияет на это) надо будет взять на заметку) спасибо)
Ну все эти неявные соглашения так и работают, да. А покажите код
по разному попробовал конструктор создать когда адекватно Name = name; Age = age; делал всё чётко) поменял местами кинул эксепшн) а написал вместо name и age ересь всякую то default значения
А, ну так Вы сломали, у Вас Name int принимает, а свойство Name строковое. Всё логично, он ж по имени сопоставляет. Он пытается из объекта передать строковый Name в конструктор где name - int
Да я понял) Просто к вашему сообщению хотел поиспытать влияет ли это вообще на десериализацию Оказ ся влияет)
Обсуждают сегодня