Ich habe eine xml
Datei, die wie folgt aussieht. Und ich möchte eine Methode erstellen, die mir den Wert mit dem Schlüssel bringen würde.XML - C# Generische Methode zum Abrufen eines Werts mit einem Schlüssel auf einem serialisierten Objekt
</cbn:Class>
<cbt:Students>
<cbt:Student>
<cbt:Key>x-param-key-studentName-1</cbt:Key>
<cbt:Value>x-param-studentSurname-val</cbt:Value>
</cbt:Student>
<cbt:Student>
<cbt:Key>x-param-key-studentName-2</cbt:Key>
<cbt:Value>x-param- studentSurname-val</cbt:Value>
</cbt:Student>
</cbt:Students>
</cbn:Class>
Also, ich möchte die valud von studentSurname
als Schlüssel der studentName
mit bekommen. Die xml
ist serialisiert, so kann ich zB auf den Student als Objekt zugreifen. Ich kann den Wert des ersten Schüler erhalten, indem Sie den Code verwenden ich geschrieben habe, wie unten:
string studentSurname = myData.Class.Students.Student[0].Value;
Wo myData
das serialisierte Objekt ist. Ich hätte gerne eine allgemeinere Methode, anstatt nur den ersten Schüler zu bekommen.
EDIT:Eine andere XML
<?xml version="1.0" encoding="UTF-8"?>
<cbn:PaidOrderNotification xmlns:cbn="http://*/3.12.0.0/*.xsd">
<cbn:NotificationDate>2016-07-29T11:59:29.1137865Z</cbn:NotificationDate>
<cbn:Purchase cbt:Id="95233035" xmlns:cbt="http://xml.*.com/3.12.0.0/*.xsd">
<cbt:Status>Test Order</cbt:Status>
<cbt:StatusId>TST</cbt:StatusId>
<cbt:Items>
<cbt:Item cbt:RunningNo="1">
<cbt:ProductId>175358</cbt:ProductId>
<cbt:ProductReportingGroup>Basic alle Laufzeiten</cbt:ProductReportingGroup>
<cbt:YourCurrencyId>EUR</cbt:YourCurrencyId>
<cbt:ProfitCalculation>
<cbt:GrossRevenue>566.44</cbt:GrossRevenue>
</cbt:ProfitCalculation>
<cbt:YourPrice>
<cbt:TotalTotalPrice>
</cbt:TotalTotalPrice>
</cbt:YourPrice>
<cbt:Deliveries />
<cbt:Additionals />
<cbt:ExtraParameters />
</cbt:Item>
</cbt:Items>
<cbt:ExtraParameters>
<cbt:ExtraParameter>
<cbt:Key>x-my-key</cbt:Key>
<cbt:Value> x-my-val</cbt:Value>
</cbt:ExtraParameter>
</cbt:ExtraParameters>
</cbn:Purchase>
</cbn:PaidOrderNotification>
ich von hier aus diesem Wert nehmen möchte:
<cbt:ExtraParameters>
<cbt:ExtraParameter>
<cbt:Key>x-didi</cbt:Key>
<cbt:Value>sfsfd</cbt:Value>
</cbt:ExtraParameter>
</cbt:ExtraParameters>
Wie kann ich das tun?
funktioniert. Ihr XML ist ungültig. In Zeile 3 öffnen Sie '', aber in Zeile 6 schließen Sie ' cbt: ExtraParameter>'. Du hast diese nicht geöffnet und du hast den Schüler nicht geschlossen. –
Bobby
Sorry, Sie @ManuToMatic haben Recht, ich habe vergessen, das vor dem Senden des Codes zu ändern. Ich habe jetzt bearbeitet :) – eg16