XML aus einer Liste von Objekten erstellen

by AlexanderZeitler 31. August 2009 19:51

Angenommen, ich habe eine Liste von Kunden und möchte Kunden mit einem bestimmten Kriterium als XML-Fragment exportieren, kann ich dies leicht mit Linq to XML erledigen.

Gegeben ist unsere Klasse “Kunde”, die wie folgt aussieht:

public class Kunde {
	public int Id { get; set; }
	public string Vorname { get; set; }
	public string Nachname { get; set; }
	public string Status { get; set; }
}

Wir haben drei Kunden, 2 davon mit Platin-Status, die als XML exportiert werden sollen:

Kunde steveBallmer = new Kunde() {Id = 1, Vorname = "Steve", Nachname = "Ballmer", Status = "Gold"};
Kunde billGates = new Kunde() {Id = 2, Vorname = "Bill", Nachname = "Gates", Status = "Platin"};
Kunde scottGuthrie = new Kunde() {Id = 3, Vorname = "Scott", Nachname = "Guthrie", Status = "Platin"};
List kunden = new List() {steveBallmer, billGates, scottGuthrie};

Der Code zur Generierung des XML sieht wie folgt aus:

XElement platinKunden = new XElement("PlatinKunden",
	from kunde in kunden
	where kunde.Status == "Platin"
	select new XElement("Kunde",
		new XAttribute("Id", kunde.Id),
		new XElement("Vorname", kunde.Vorname),
		new XElement("Nachname", kunde.Nachname),
		new XElement("Status", kunde.Status)));

Persistieren können wir die Platinkunden mittels

platinKunden.Save("platinkunden.xml");

Erwartungsgemäß sieht das Resultat wie folgt aus:

<platinkunden>
	<kunde id="2">
		<vorname>Bill</vorname>
		<nachname>Gates</nachname>
		<status>Platin</status>
	</kunde>
	<kunde id="3">
		<vorname>Scott</vorname>
		<nachname>Guthrie</nachname>
		<status>Platin</status>
	</kunde>
</platinkunden>
Wenn ihnen der Artikel gefallen hat oder er für sie hilfreich war, bitte "kicken" sie ihn.
kick it on dotnet-kicks.de

Currently rated 5.0 by 2 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Powered by BlogEngine.NET
Theme by Alexander Zeitler

Search

Community