12

以下のようなxmlファイルがあります。

<?xml version="1.0" encoding="utf-8"?>
 <file:Situattion xmlns:file="test">

  <file:Properties>

</file:Situattion>

子要素 file:Character using xDocument.So を追加したいので、最終的な xml は以下のようになります

<?xml version="1.0" encoding="utf-8"?>
  <file:Situattion xmlns:file="test">

   <file:Characters>

     <file:Character file:ID="File0">
     <file:Value>value0</file:Value>
     <file:Description>
      Description0 
     </file:Description>
     </file:Character>

 <file:Character file:ID="File1">
     <file:Value>value1</file:Value>
     <file:Description>
     Description1
     </file:Description>
     </file:Character>

     </file:Characters>

Xdocument クラスを使用して試した c# のコードを以下に示します。

        XNamespace ns = "test";
        Document = XDocument.Load(Folderpath + "\\File.test");

        if (Document.Descendants(ns + "Characters") != null)
        {

            Document.Add(new XElement(ns + "Character"));
        }
        Document.Save(Folderpath + "\\File.test");

行 " Document.Add(new XElement(ns + "Character"));" でエラーが発生しました:

"This operation would create an incorrectly structured document.".

「 」の下にノードを追加するにはどうすればよいですかfile:Characters

4

2 に答える 2