user1166905
user1166905

Reputation: 2622

c# XML avoid html encode using XDocument

After creating an xml file using XDocument I end up with:

<![CDATA[text]]>

and

<br />

But I want to keep these as HTML, how do I stop this?

Upvotes: 2

Views: 3653

Answers (1)

Kris Vandermotten
Kris Vandermotten

Reputation: 10201

I assume you are passing a string to an XDocument or XElement constructor somewhere, where that string contains XML. Don't. Instead, use XDocument.Parse(string) or XElement.Parse(string).

See http://msdn.microsoft.com/en-us/library/system.xml.linq.xdocument.parse.aspx and http://msdn.microsoft.com/en-us/library/system.xml.linq.xelement.parse.aspx

Note that this will only work for HTML that happens to be well-formed XML, obviously.

For example:

XElement.Parse("<TagName>The string has <br /> in it.</TagName>")

If you statically know the text, just build it up using constructor calls, e.g.

new XElement("TagName", "The string has ", new XElement("br"), " in it.")

Upvotes: 1

Related Questions