xml – C#: Null reference exception thrown while using XmlDocment – Education Career Blog

A NullReferenceException is thrown by the runtime when I convert XElement into XmlNode using the following function:

public static XmlNode GetXmlNode(this XElement element)
{
    using (XmlReader xmlReader = element.CreateReader())
    {
        XmlDocument xmlDoc = new XmlDocument();
        xmlDoc.Load(xmlReader);
        xmlDoc.ChildNodes4.InnerXml = "0.15"; ====> null reference exception occurs here
        return xmlDoc;
    }
}

How can I convert XElement to XmlNode without this problem?

,

Access the DocumentElement first in order to get the root:

xmlDoc.DocumentElement.ChildNodes4.InnerXml = "0.15";

EDIT: an XmlDocument inherits from XmlNode. You should be able to simply do this:

XmlNode node = xmlDoc.DocumentElement;
return node;

If you need to cast it for a particular method you could use (XmlNode)xmlDoc.DocumentElement or xmlDoc.DocumentElement as XmlNode.

Leave a Comment