0
C#のXML APIに少し問題があります。私は、XMLファイルにオブジェクトのリストを保存するために、次のコードを持っている:C#XML - ルート要素にオブジェクトのリストを追加する
public void Export(List<Booking> bookings)
{
string path = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "zeitbuchungen.xml");
XmlDocument xmlDocument = new XmlDocument();
XPathNavigator xmlNavigator = xmlDocument.CreateNavigator();
using (XmlWriter xmlWriter = xmlNavigator.AppendChild())
{
XmlSerializer xmlSerializer = new XmlSerializer(typeof(List<Booking>), new XmlRootAttribute("Bookings"));
xmlSerializer.Serialize(xmlWriter, bookings);
}
xmlDocument.Save(path);
}
問題は、私は再び、このメソッドを呼び出した場合、ファイル、である - もちろんのは - 置き換えられますが、私は新しいを追加したいですリストをファイルに追加します。
私は二回メソッドを呼び出す場合、これは、ファイルはのようになります方法です。
<Bookings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Booking>
<SerialNumberTerminal>1234567890</SerialNumberTerminal>
<TransponderID>FBbNAx75KHjN</TransponderID>
<BookingDateTime>2016-03-19T20:21:01</BookingDateTime>
<BookingCommand>G</BookingCommand>
</Booking>
<Booking>
<SerialNumberTerminal>1234567890</SerialNumberTerminal>
<TransponderID>wJAo3EGsuSRI</TransponderID>
<BookingDateTime>2016-03-19T20:21:01</BookingDateTime>
<BookingCommand>G</BookingCommand>
</Booking>
</Bookings>
私はすでに私がxmlDocument.Load(path)
で既存のファイルを読み込むことができ、考え出したが、私はどのように知りませんルート要素に新しいリストを追加します。