0

list<> から xml ファイルにデータを追加する必要があります。私は XDocument を使用して要素を作成し、データを作成して xml に保存しています。今は複数あり、 foreach ループを使用して個人データ STAFFID を保存しようとしていますが、エラーが発生しています。

public void generateXMLFile(List<UWL> myList )
{          
        XDocument objXDoc = new XDocument(
        new XElement("Institution",
         new XElement("RECID", myList[0].recid),
         new XElement("UKPRN", myList[0].UKPRN),
         new XElement("Person",

             foreach(var m in myList)
             {
                new XElement("STAFFID", m.STAFFID)
             } 
          )
         )
        );

        objXDoc.Declaration = new XDeclaration("1.0", "utf-8", "true");
        //
        objXDoc.Save(@"C:\Test\generated.xml");

        //Completed.......//
        MessageBox.Show("Process Completed......");
}
4

1 に答える 1

1

Person要素のコンテンツを提供する必要があります。Foreach ループは何も返しません。したがって、有効なコードは次のようになります。

XDocument objXDoc = new XDocument(
  new XElement("Institution",
   new XElement("RECID", myList[0].recid),
   new XElement("UKPRN", myList[0].UKPRN),
   new XElement("Person",
       myList.Select(m => new XElement("STAFFID", m.STAFFID))
  )
 )
);

これにより、要素のコレクションが作成さSTAFFIDれ、このコレクションが要素のコンテンツとして設定されますPerson

于 2013-10-04T10:39:13.183 に答える