Ich habe den folgenden Code auf dem Server:
%Vor% Dies erstellt eine neue DomainException
mit der Eigenschaft InnerException
. Ich habe überprüft, dass dies im Debugger festgelegt ist.
Die benutzerdefinierte Ausnahme ist folgendermaßen definiert:
%Vor%Dies soll eine sinnvolle Fehlermeldung an den Client zurückgeben, damit dem Benutzer gesagt werden kann, dass zu viele Zeilen vorhanden sind. Also, in der Lade-Komplett-Handler möchten wir haben:
%Vor% Leider ist die Eigenschaft InnerException
null
. Also müssen wir nur den Text der äußeren Ausnahmebedingungsnachricht überprüfen, die nicht korrekt auf den Client übertragen wird.
Es wurde vorgeschlagen, dass ich brauche:
%Vor%in der Web-Konfigurationsdatei. Ich habe das versucht und es funktioniert nicht.
Es wurde auch vorgeschlagen, dass ich brauche:
%Vor%im Datenvertrag. Jetzt, wenn ich das nicht an die falsche Stelle gesetzt habe, funktioniert das auch nicht.
Ich habe auch versucht, [Serializable]
zur benutzerdefinierten Ausnahme hinzuzufügen und sie durch die allgemeine Exception
zu ersetzen. Beides funktionierte nicht.
Warum ist die InnerException
-Eigenschaft null? Was vermisse ich?
Ich nehme an, du solltest
verwenden [FaultContract(typeof(OverMaxRowLimitException))]
für Ihren Betriebsvertrag dafür. Und Ihr OverMaxRowLimitException
sollte serialisierbar sein.
Auch in der Verwendung, nehme ich an, dass die Verwendung der Option
die richtige Methode ist, um die Ausnahme auszulösen throw new FaultException<OverMaxRowLimitException>(yourException);
Tags und Links c# silverlight wcf-ria-services