1Danke
ERLEDIGT
JA
JA
ANTWORTEN
1
1
ZUGRIFFE
1003
1003
EMPFEHLEN
-
Hallo,
ich verwende das erste mal LINQ to XML und habe Schwierigkeiten meinen XML Code zu generieren. Dateien öffnen und auslesen klappt wunderbar.
Ich habe eine Klasse Picture und eine davon abgeleitete Reference. In Reference wird die Position gepseichert. In Picture hab ich 2 Integer Listen.
So etwas soll am Ende rauskommen:
Code :1 2 3 4 5 6 7 8
<puzzle> <reference id="0" position="Wert aus Reference Objekt"> <edge id="0" x="1. Wert aus 1. Liste" y="1. Wert aus 2. Liste" /> <edge id="1" x="2. Wert aus 1. Liste" y="2. Wert aus 2. Liste" /> ... </reference> ... </puzzle>
Die Methode dafür sieht momentan so aus:
getPos() liefert die PositionPHP-Code:public void saveXml(string url, List<Reference> references)
{
XDocument doc = new XDocument();
doc.Add(new XElement("puzzle",
from re in references
select new XElement("references", new XAttribute("position", re.getPos()),
from x in re.getX()
select new XElement("edge", new XAttribute("x", x))
)));
doc.Save(url);
}
getX() die 1. Liste. Die zweite Liste wäre getY()
Das Ergebnis davon ist schonmal nicht schlecht, aber leider fehlen mir da drin noch die Wete aus der 2. Liste und die jeweiligen IDs. Die können aber beim abspeichern dynamisch erzeugt werden, also per i++ oder ähnlichem.
Ich weiß aber nicht mehr weiter und auch über verschiedene Tutorials komm ich da nicht weiter, wie gesagt, das erste mal das ich mit LINQ arbeite.
Danke!Geändert von Azubis (03.12.10 um 11:51 Uhr)
-
06.12.10 13:27 #2
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Hi.
GrußCode csharp:1 2 3 4 5 6 7 8 9 10 11 12
XDocument doc = new XDocument(); var id = 0; doc.Add(new XElement("puzzle", from re in references let xs = re.getX() let ys = re.getY() select new XElement("reference", new XAttribute("position", re.getPos()), new XAttribute("id", id++), from i in Enumerable.Range(0, xs.Count) select new XElement("edge", new XAttribute("id", i), new XAttribute("x", xs[i]), new XAttribute("y", ys[i])) )));
If at first you don't succeed, try again. Then quit. No use being a damn fool about it.
Ähnliche Themen
-
Linq & Aliase
Von Mel_One im Forum .NET DatenverwaltungAntworten: 1Letzter Beitrag: 28.01.10, 21:05 -
Linq Grouping
Von dila71 im Forum .NET DatenverwaltungAntworten: 0Letzter Beitrag: 12.05.09, 12:43 -
[LINQ] Index by value
Von StupidBoy im Forum .NET CaféAntworten: 0Letzter Beitrag: 13.01.09, 18:39 -
FK ändern mit LINQ to SQL
Von marcoD im Forum .NET DatenverwaltungAntworten: 3Letzter Beitrag: 13.11.08, 15:00 -
Linq VB2005
Von bolshi im Forum .NET DatenverwaltungAntworten: 3Letzter Beitrag: 22.04.08, 15:25





Zitieren
Login





