Преобразовать объект XMLDocument в объект XmlNode - C#?

Как я преобразовываю XmlDocument к a XmlNode в C#? Я должен отправить все XmlDocument возразите против как входной параметр к веб-сервису.NET.

7
задан Michael Kniskern 4 March 2010 в 21:25
поделиться

3 ответа

XmlDocument - это XmlNode, поэтому вы можете просто передать объект документа.

Или вы можете отправить его DocumentElement или любой узел, возвращенный из запроса XPath.

XmlDocument doc = null;
XmlNode node = doc;

XmlNode node = doc.DocumentElement;

XmlNode node = doc.SelectSingleNode("/foo/bar");

Приведение или преобразование не требуется, если вам не нужно устранять неоднозначность XmlNode из XmlDocument для метода с перегрузками для обоих типов параметров. В этом случае используйте оператор приведения или как .

7
ответ дан 7 December 2019 в 01:19
поделиться

Если вам нужно явно ссылаться на него как на XmlNode, используйте "as":

XmlDocument doc = ...

XmlNode node = doc as XmlNode;
3
ответ дан 7 December 2019 в 01:19
поделиться

XmlDocument является производным от XmlNode, но вы также можете отправить XmlDocument.DocumentElement, который является XmlElement, но в конечном счете производным от XmlNode. Может потребоваться проверка XmlDocument.DocumentElement == null.

0
ответ дан 7 December 2019 в 01:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: