Ich habe einen WCF-Client, der mit einer unbekannten Serverimplementierung kommuniziert, über die ich keine Kontrolle habe. Dieser Client funktioniert gut, es mag einfach nicht, wie es scheint, falsch geformte SOAP-Fehlermeldungen. Die Nachrichten, die ich erhalten wie folgt aussehen:Kann man schlecht geformte Fehlermeldungen konsumieren?
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header>...</soap:Header> <soap:Body> <soap:Fault> <soap:faultcode>soap:Client</soap:faultcode> <soap:faultstring>...</soap:faultstring> <soap:detail>...</soap:detail> </soap:Fault> </soap:Body> </soap:Envelope>
Ich glaube, nach der Seife Schema sollten die untergeordneten Elemente nicht wie qualifiziert und definiert werden, um zu sehen:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header>...</soap:Header> <soap:Body> <soap:Fault> <faultcode>soap:Client</faultcode> <faultstring>...</faultstring> <detail>...</detail> </soap:Fault> </soap:Body> </soap:Envelope>
Gibt es etwas, das ich konfigurieren kann oder überschreiben, damit ich Nachrichten empfangen kann, die im letzteren Format ankommen, so dass ich die Fehlermeldungen anstelle von XML-Ausnahmen konsumieren kann?
Vielleicht habe ich etwas verpasst, aber ich glaube, das ist alles Sachen, die ich für den Server tun können und nicht auf dem Client. Korrigieren Sie mich, wenn ich falsch liege, aber es schien, dass es eine IErrorHandler-Implementierung erstellen könnte, aber ich glaube, dass dies nur für die Serverseite gilt. – Dave