XML File Frage

30/06/2009 - 18:47 von Ahrimaan | Report spam
Hallo zusammen ,

ich habe eine XML File welche ich einlese :

Ein Datensatz sieht so aus :

<ReceiptEntry RecordIndex="16" RecordMd5="XXXXXXX==" ProviderExport="false"
InfoCount="1" SalesPointType="Default" CrmNumberImportFile=""
VPOrderNumber="XXX" SalesCampaignImportFile="XXX" SellerType="ImportFile"
SalesCampaignId="XXX" TransactWish="True" PK_Seller="XXX"
SalesCampaignType="ImportFile" PositionType="1" SalesCampaign="XXXX"
PK_SalesCampaign="45370" ErrorCount="0" CrmNumber="XXX" PK_Order="XXXX"
CrmNumberType="SalesCampaign" WorkflowStateOrder="Freigegeben"
PK_SalesPoint="XXXX" WarningCount="0" PK_Contract="XXX">
- <Contracts>
- <Contract>
<Error Class="Info" Source="Konditionen" Message="Dem Produkt TEL-)"
Value="34096741" />
- <ReferenceNumbers>
<ReferenceNumber Number="XXX" Path="/contract/referencenumber1/Number" />
<ReferenceNumber Number="XXX" Path="/contract/referencenumber2/Number" />
</ReferenceNumbers>
</Contract>
</Contracts>
</ReceiptEntry>


So.
Ich lese nun mit

XmlDocument doc = new XmlDocument();
doc.Load(s);
XmlElement root = doc.DocumentElement;
XmlNodeList nodes = root.SelectNodes("./ReceiptEntry");
foreach (XmlNode n in nodes)
{
if (n.Attributes["Error Class"].ToString() == "Error")
{
Console.WriteLine("Fehler");
}
}
die Datei ein. leider kann ich nicht auf die Error Class zugreifen.
Was mache ich falsch ?

Grüße
Pawel
 

Lesen sie die antworten

#1 Carl-Christian Schaffert
30/06/2009 - 19:13 | Warnen spam
Hallo Ahrimaaaaan,


<ReceiptEntry RecordIndex="16" RecordMd5="XXXXXXX=="
ProviderExport="false" InfoCount="1" SalesPointType="Default"
CrmNumberImportFile="" VPOrderNumber="XXX" SalesCampaignImportFile="XXX"
SellerType="ImportFile" SalesCampaignId="XXX" TransactWish="True"
PK_Seller="XXX" SalesCampaignType="ImportFile" PositionType="1"
SalesCampaign="XXXX" PK_SalesCampaign="45370" ErrorCount="0"
CrmNumber="XXX" PK_Order="XXXX" CrmNumberType="SalesCampaign"
WorkflowStateOrder="Freigegeben" PK_SalesPoint="XXXX" WarningCount="0"
PK_Contract="XXX">
- <Contracts>
- <Contract>
<Error Class="Info" Source="Konditionen" Message="Dem Produkt TEL-)"
Value="34096741" />
- <ReferenceNumbers>
<ReferenceNumber Number="XXX" Path="/contract/referencenumber1/Number" />
<ReferenceNumber Number="XXX" Path="/contract/referencenumber2/Number" />
</ReferenceNumbers>
</Contract>
</Contracts>
</ReceiptEntry>


So.
Ich lese nun mit

XmlDocument doc = new XmlDocument();
doc.Load(s);
XmlElement root = doc.DocumentElement;
XmlNodeList nodes = root.SelectNodes("./ReceiptEntry");
foreach (XmlNode n in nodes)
{
if (n.Attributes["Error Class"].ToString() == "Error")
{
Console.WriteLine("Fehler");
}
}
die Datei ein. leider kann ich nicht auf die Error Class zugreifen.
Was mache ich falsch ?



Ganz einfach, du hast keinen Node der "Error Class" heißt sonderen einen der
"Error heißt und ein Attribut mit dem Namen "Class" enthàlt, entweder du
schriebst es zusammen oder fragst nach "Error" ab, dann klappts ;-)

Gruß Carl

Ähnliche fragen