Умный способ изменить преобразование JSON в XML и сохранить настройки - PullRequest
0 голосов
/ 15 апреля 2019

Я уже десериализовал json-файл в c # -объекты. Это было сделано следующим:

JsonSerializer<FooClass>().DeserializeFromString(json)

и все работает хорошо. Теперь я хочу изменить json на xml и сделать то же самое, сохранив все классы и настройки, которые уже были выполнены внутри решения.

Преобразование из JSON в XML очень просто, но я не могу понять, как десериализовать XML, чтобы мне не нужно было менять много кода.

Можно ли сохранить всю настройку, но как-то изменить несколько строк кода, например

JsonSerializer<FooClass>().DeserializeFromString(json)

на что-то похожее, но вместо этого десериализует xml? Здесь я нашел следующие решения, но они, похоже, не решают проблему:

XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
string jsonText = JsonConvert.SerializeXmlNode(doc);

но SerializeXmlNode невозможен?

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

Также я знаю, что прямое преобразование из json в xml имеет свои минусы, но если мы отвлечемся от этого и сосредоточимся на части xml, то было бы неплохо.

Это потому, что теперь мы пишем в xml, а не в json, и, следовательно, необходимы изменения.

1 Ответ

1 голос
/ 15 апреля 2019

Один простой маршрут, который я вижу, - это использование атрибутов XmlClass и использование XmlSerializer .

...