将JSON转换为xml并保持设置的智能方法

时间:2019-04-15 20:51:32

标签: c# json xml serialization deserialization

我已经将一个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 个答案:

答案 0 :(得分:1)

我看到的一个简单方法是利用XmlClass Attributes并使用XmlSerializer