XML CDATA Encodage
Je suis en train de construire un document XML en C# avec CDATA à tenir le texte à l'intérieur d'un élément. Par exemple..
<email>
<![CDATA[[email protected]]]>
</email>
Cependant, quand je reçois la propriété InnerXml du document, la CDATA a été reformaté donc InnerXml chaîne se présente comme ci-dessous qui échoue.
<email>
<![CDATA[[email protected]]]>
</email>
Comment puis-je garder le format d'origine lors de l'accès à la chaîne de l'XML?
Acclamations
- S'il vous plaît montrer comment vous êtes en train de construire le document. Je soupçonne que vous êtes tout simplement la mise au nœud de texte pour "<![CDATA[[email protected]]]>" c'est pourquoi il est échappé.
- En effet, je suis... à l'aide de la propriété InnerText de la XmlNode. Que dois-je utiliser?
Vous devez vous connecter pour publier un commentaire.
Ne pas utiliser
InnerText
: utilisationXmlDocument.CreateCDataSection
:Avec
XmlDocument
:ou avec
XElement
:new XCData("]]>blah")
sorties<![CDATA[]]]]><![CDATA[>blah]]>
, avec "]]" dans un CDATA élément et la ">" dans l'autre.Voir XmlDocument::CreateCDataSection Méthode pour plus d'informations et des exemples sur la façon de créer CDATA nœuds dans un Document XML