Что ж, если эти вещи не являются правильно сформированными, не ожидайте, что они смогут воспринимать это как XML.Таким образом, если вы хотите поместить неправильно сформированную HTML-разметку в элемент XML, подумайте об использовании раздела CDATA, например,
string value = "Steet,<BR> </BR> City";
XElement address = new XElement("Address", new XCData(value));
, что приведет к
<Address><![CDATA[Steet,<BR> </BR> City]]></Address>
Если вы хотитепроанализировать значение как XML, а затем сделать это с помощью XmlReader в режиме фрагмента, например
static void Main()
{
string value = "Steet,<BR> </BR> City";
XElement address = new XElement("Address", ParseFragment(value));
Console.WriteLine(address);
}
static IEnumerable<XNode> ParseFragment(string fragment)
{
using (StringReader sr = new StringReader(fragment))
{
using (XmlReader xr = XmlReader.Create(sr, new XmlReaderSettings() { ConformanceLevel = ConformanceLevel.Fragment }))
{
xr.Read();
XNode node;
while (!xr.EOF && (node = XNode.ReadFrom(xr)) != null)
{
yield return node;
}
}
}
}
, что приводит к
<Address>Steet,<BR> </BR> City</Address>