| 

.NET C# Java Javascript Exception

3
Hallo,
ich möchte eine XML einlesen und die darin befindlichen Elemente nach einer (eindeutigen) ID durchsuchen.
Wurde die ID gefunden, soll der Value von "Wert" von 0 auf 1 gesetzt werden. Danach soll die XML wieder abgespeichert werden.

Nun bin ich soweit, dass das Element mit der ID gefunden wird und auch der Wert geändert wird, allerdings wird beim abspeichern mein root-Element und andere Datensätze gelöscht. Irgendwo muss also etwas nicht hinhauen. Hier meine XML und der Linq Code:

XML:
<?xml version="1.0" encoding="utf-8"?>
<root>

<Paket>
<ID>1</ID>
<Wert>0</Wert>
</Paket>

<Paket>
<ID>2</ID>
<Wert>0</Wert>
</Paket>

</root>

XElement doc = XElement.Load(@"C:\datei.xml");

var tmp = (from p in doc.Elements()
where p.Element("ID").Value == Id.ToString()
select p).First();


tmp.SetElementValue("Wert",1);
tmp.Save(@"C:\datei.xml");
28.02.2012
Tom011 65 1 4
2 Antworten
3
Versuchs mal mit

doc.Save(@"C:\datei.xml");


In "tmp" sind nur die Elemente drinne auf die die Where-Bedingung zutrifft.
28.02.2012
Floyd 14,6k 3 9
Vielen Dank!
Tom011 29.02.2012

Stelle deine .net-Frage jetzt!
TOP TECHNOLOGIES CONSULTING GmbH