我試圖將Xml轉換爲Json並運行一些業務邏輯,然後使用反序列化成一個c#對象Newtonsoft Json.Net。 Xml具有CData值。我如何反序列化Json,以便將CData中的值映射到c#字段。使用Newtonsoft處理將XML轉換爲Json的CData
編輯: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);
}
謝謝前進。
謝謝Andrei的回覆。這裏的問題是該領域可能包含或不包含CData。在一個XML中,該字段可能有CData,在另一個XML中該字段可能有純文本,該解決方案應該適用於這兩種情況。 (我很抱歉,我錯過了在問題中提及這個信息) – Kaushik