Это потому, что XmlDocument не имеет корневого свойства; Корень XmlDocument представлен свойством DocumentElement объекта, в вашем случае: doc.DocumentElement
, и поскольку ваш метод получает параметр XElement в качестве входных данных, вам нужно будет преобразовать XmlElement в XElement, прежде чем передать его в свой Visit () метод. Используйте для этого функцию ниже.
/// <summary>
/// Converts an XmlElement to an XElement.
/// </summary>
/// <param name="xmlelement">The XmlElement to convert.</param>
/// <returns>The equivalent XElement.</returns>
public static XElement ToXElement(XmlElement xmlelement)
{
return XElement.Load(xmlelement.CreateNavigator().ReadSubtree());
}
Тогда попробуйте позвонить следующим образом:
Visit(ToXElement(doc.DocumentElement));