我正在尝试使用 CDATA 在 C# 中构建一个 XML 文档,以将文本保存在一个元素中。例如..
<email>
<![CDATA[test@test.com]]>
</email>
但是,当我获取文档的 InnerXml 属性时,CDATA 已被重新格式化,因此 InnerXml 字符串看起来像下面的失败。
<email>
<![CDATA[test@test.com]]>
</email>
如何在访问XML字符串时保持原来的格式?
干杯
最佳答案
不要使用 InnerText
:使用 XmlDocument.CreateCDataSection
:
using System;
using System.Xml;
public class Test
{
static void Main()
{
XmlDocument doc = new XmlDocument();
XmlElement root = doc.CreateElement("root");
XmlElement email = doc.CreateElement("email");
XmlNode cdata = doc.CreateCDataSection("test@test.com");
doc.AppendChild(root);
root.AppendChild(email);
email.AppendChild(cdata);
Console.WriteLine(doc.InnerXml);
}
}
关于c# - XML CDATA 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/969124/