Forum: PC-Programmierung C# xml Ebenen XmlAttribute


von guelay (Gast)


Lesenswert?

Hallo,

ich habe ein Problem bei einem c# Programm. Ich möchte eine xml Datei
erzeugen, die mehrere Ebenen unter einem Ebene hat.

z.B.

<Abc>

<Ccc></Ccc>
<Ccc></Ccc>
<Ccc></Ccc>

<Ddd></Ddd>

<Ccc></Ccc>
<Ccc></Ccc>

<Ddd></Ddd>
<Ddd></Ddd>
...
</Abc>

Die Reihenfolgen der Elemente Ccc und Ddd sollen beliebig sein. Es gibt 
also keine feste Reihenfolgen.

Mein Code:
1
[XmlRoot (ElementName = "Abc")
2
public class Klasse1{
3
4
public List<KlasseCcc> Entries {get; set;}
5
public List<KlasseDdd> Entries2 {get; set;}
6
7
}
8
9
[XmlRoot (ElementName = "Ccc")
10
public class Klasse Ccc{
11
12
usw...
13
}

Mein Codeansatz funktioniert nicht, weil er zuerst Ccc Bereiche und 
danach die Ddd Bereiche hinzufügt. Zwischen den Ccc Bereichen habe ich 
aber die Ddd Bereiche. Hat jemant einen Vorschlag für mich?

von guelay (Gast)


Lesenswert?

guelay schrieb:
> Hallo,
>
> ich habe ein Problem bei einem c# Programm. Ich möchte eine xml Datei
> erzeugen, die mehrere Ebenen unter einem Ebene hat.
>
> z.B.
>
> <Abc>

> Mein Codeansatz funktioniert nicht, weil er zuerst Ccc Bereiche und
> danach die Ddd Bereiche hinzufügt. Zwischen den Ccc Bereichen habe ich
> aber die Ddd Bereiche. Hat jemant einen Vorschlag für mich?

Ich möchte also eine Liste haben wie z.B.
public List<object> Entries {get; set;}

Je nach Objekttype möchte später in die XML-Dokument entweder den 
Bereich Ccc oder den Bereich Ddd einfügen.

von IT-Abteilung (Gast)


Lesenswert?

Warum ausgerechnet C#? Kannst du keine echte Programmiersprache?

von guelay (Gast)


Lesenswert?

IT-Abteilung schrieb:
> Warum ausgerechnet C#? Kannst du keine echte Programmiersprache?

@IT-Abteilung: Danke für die professionelle Antwort.

schon gelöst.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.