Hallo zusammen,
ich versuche (mittlerweile) verzweifelt ein XML mit LINQ zu lesen.
Als Ergebnis möchte ich die Values von einem bestimmten Attribut haben, das in mehreren Elementen vom gleichen Typ vorkommt. Also eine Auflistung sozusagen.
Mein XML hat unter anderen mehrere solche Einträge:
[highlight=xml]
<Ctl_Button Top="92" Left="636" Width="37" Height="25" Name="" Align="0" Returnstring="leer" Transparent="0" Tabindex="27">
<Caption>
<Language Name="DE" V1="" />
<Language Name="EN" V1="" />
<Language Name="FR" V1="" />
</Caption>
<Picture> bitmaps\loeschen.BMP </Picture>
<Font Name="Arial" Size="8" Bold="-1" Italic="0" Underline="0" Color="0x0" />
</Ctl_Button>
[/highlight]
Ich möchte jetzt aus diesem Element Ctl_Button das Value des Attributes Returnstring haben. Und das für alle Elemente vom Typ Ctl_Button
Mein Code zum lesen sieht so aus:
[highlight=csharp]
var xmlValue = XElement.Load("Mein.xml");
var returnValues = from a in xmlValue.Elements()
select a.Element("Ctl_Button");
foreach (var element in returnValues.Elements())
{
string returnValue = element.Attribute("Returnstring").Value;
Console.WriteLine(returnValue);
}
[/highlight]
Da bekomme ich aber nur eine Null-Referenz-Exception zurück
Kann mir jemand sagen, was ich anders machen muss? Mir fällt nichts mehr ein
ich versuche (mittlerweile) verzweifelt ein XML mit LINQ zu lesen.
Als Ergebnis möchte ich die Values von einem bestimmten Attribut haben, das in mehreren Elementen vom gleichen Typ vorkommt. Also eine Auflistung sozusagen.
Mein XML hat unter anderen mehrere solche Einträge:
[highlight=xml]
<Ctl_Button Top="92" Left="636" Width="37" Height="25" Name="" Align="0" Returnstring="leer" Transparent="0" Tabindex="27">
<Caption>
<Language Name="DE" V1="" />
<Language Name="EN" V1="" />
<Language Name="FR" V1="" />
</Caption>
<Picture> bitmaps\loeschen.BMP </Picture>
<Font Name="Arial" Size="8" Bold="-1" Italic="0" Underline="0" Color="0x0" />
</Ctl_Button>
[/highlight]
Ich möchte jetzt aus diesem Element Ctl_Button das Value des Attributes Returnstring haben. Und das für alle Elemente vom Typ Ctl_Button
Mein Code zum lesen sieht so aus:
[highlight=csharp]
var xmlValue = XElement.Load("Mein.xml");
var returnValues = from a in xmlValue.Elements()
select a.Element("Ctl_Button");
foreach (var element in returnValues.Elements())
{
string returnValue = element.Attribute("Returnstring").Value;
Console.WriteLine(returnValue);
}
[/highlight]
Da bekomme ich aber nur eine Null-Referenz-Exception zurück
Kann mir jemand sagen, was ich anders machen muss? Mir fällt nichts mehr ein
Comment