【发布时间】:2016-06-28 09:37:21
【问题描述】:
我正在尝试将 Xml 转换为 Json 并运行一些业务逻辑,然后使用 Newtonsoft Json.Net 反序列化为 c# 对象。 Xml 具有 CData 值。如何反序列化 Json,以便将 CData 中的值映射到 c# 字段。
编辑:xml 可能/可能不包含 CData
例如 Xml:
使用 CData
<?xml version="1.0" encoding="UTF-8"?>
<root>
<text><![CDATA[Sample Text]]></text>
</root>
纯文本
<?xml version="1.0" encoding="UTF-8"?>
<root>
<text>Sample Text></text>
</root>
Json:
使用 CData:
{"text":{"#cdata-section":"Sample Text"}}
纯文本:
{"text":"Sample Text"}
代码:
class Data
{
[JsonProperty("text")]
public string Text { get; set; }
}
public static Data ConvertJsonToObject(string json)
{
return JsonConvert.DeserializeObject<Data>(json);
}
谢谢你。
【问题讨论】: