DataContractJsonSerializer генерирует строку Ghost для ключей JSON? - PullRequest
3 голосов
/ 21 мая 2010

DataContractJsonSerializer это хороший класс, добавленный в .net framework, который можно использовать для сериализации / desirealize объекта в JSON.

Теперь вот пример, который я пытаюсь

[Serializable] class User { public string name;     public string userId; }

Теперь следующий вывод генерируется

Вывод: обратите внимание на структуру, в которой ожидается только «имя» вместо k__BackingField

Теперь это проблема после того, как я столько копаю, что я не уверен, откуда <> и _BackingField идет?

{
"<name>k__BackingField":"test user",
"<userId>k__BackingField":100001}

1 Ответ

3 голосов
/ 21 мая 2010

Это просто обоснованное предположение. Я думаю, это потому, что вы используете открытые поля вместо свойств для имени и идентификатора пользователя.

Редактировать: похоже, это также связано с тем, что вы используете атрибут [Serializable] вместо [DataContract] и [DataMember]. Проверьте этот пост для более подробной информации:

C # автоматическая десериализация свойств JSON

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...