добавить пространство имен в XML-документ в C # - PullRequest
0 голосов
/ 06 января 2010

У меня есть следующий xml

<book>
   <chapter>this is a sample text</chapter>
</book>

и нужно добавить к нему пространство имен, подобное приведенному ниже

<ns0:book xmlns:ns0="http://mybookurl/sample">
   <chapter>this is a sample text</chapter>
</ns0:book>

Я попробовал предложения Греко, но это не работает. Создание конкретного XML-документа с использованием пространств имен в C #

был бы признателен за любую помощь!

Спасибо

1 Ответ

0 голосов
/ 06 января 2010

Вы можете сделать это, загрузив Xml в XmLDocument, затем найдя каждый узел, к которому вы хотите добавить ns0, и задав для этого свойства Prefix этого XmlNodes значение ns0.

Примерно так:

XmlDocument myDoc = new XmlDocument();
myDoc.LoadXml("my_file.xml");

foreach (XmlNode eachBook in myDoc.GetElementsByTagName("book")) {
    eachBook.Prefix = "ns0";
}

myDoc.Save("my_changed_file.xml");
...