我有一个URL字符串,我想插入XMLDocument - XmlElement节点:
“HTTP://xx.xxx.xxx.xx4:7000 / SomeURL /有些/地点=阿萨夫&安培;;门户=如何”
编写此代码时:
XmlElement NodeElement = xmlDoc.CreateElement(nodeToCreate);
NodeElement.InnerText = propInfo.GetValue(requestData,null).ToString();
additionalParamsNode.AppendChild(NodeElement);
'NodeElement.InnerText'中的文字看起来很好,但当我做了appendChild() “& amp”写在XMLElement additionalParamsNode中。 它就像XMLElement采用InnerXML,而不是NodeElement的InnerText。
我不想将带有“amp”的字符串写入XML,因为链接不起作用。
如何在不改变“&”的情况下追加儿童“& amp”?
答案 0 :(得分:1)
如果我没记错,&'s是XML中的非法字符之一。这就是为什么它变成& amp(html相当于&)。
您应该能够将数据包装在CDATA标签中。
<![CDATA[http://xx.xxx.xxx.xx4:7000/SomeURL/Some/?Locale=asaf&;Portal=how]]>
您可能必须在完成后解析出CDATA标记。</ p>