Как я могу построить XmlDocument со множеством пространств имен xml в одном узле? - PullRequest
3 голосов
/ 22 июня 2009

Я пытаюсь построить XmlDocument, чтобы после сериализации я мог получить что-то вроде этого xml:

<?xml version="1.0" encoding="UTF-8"?>
<wnio:element xmlns:wnio="somuri" xmlns:xf="abcd">
   <xf:nestedelement>somtext</xf:nestedelement>
</wnio:element>

Дело в том, что XmlElement позволяет указывать ТОЛЬКО ОДНО пространство имен через свойства NamespaceURI и Prefix. Как мне реализовать такую ​​функциональность?

1 Ответ

3 голосов
/ 22 июня 2009

Атрибуты "xmlns: wnio" и "xmlns: xf" являются такими же атрибутами, как и любые другие. Просто добавьте их в XmlElement, к которому вы хотите, чтобы эти пространства имен XML относились.

Следующий фрагмент кода производит почти то, что вы хотите:

XmlDocument document = new XmlDocument();
document.AppendChild(document.CreateElement("wnio", "element", "somuri"));
document.DocumentElement.SetAttribute("xmlns:xf", "abcd");
document.DocumentElement.AppendChild(document.CreateElement("xf", "nestedelement", "abcd"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...