asp.net Web API - Standardfehlermeldungen

8

Gibt es eine Möglichkeit, das Standardverhalten von Web Api für Fehlermeldungen zu ändern, beispielsweise:

%Vor%

Reagiert mit (paraphrasiert):

%Vor%

Ich möchte es vermeiden, diese ziemlich detaillierten Informationen über meinen Code herauszugeben und stattdessen durch etwas wie:

zu ersetzen %Vor%

Ich könnte das im UserController machen, aber die Codeausführung geht noch nicht einmal so weit.

bearbeiten:

Ich habe eine Möglichkeit gefunden, detaillierte Fehlermeldungen aus der Ausgabe zu entfernen, indem ich diese Codezeile in Global.asax.cs verwende:

%Vor%

Dies erzeugt eine Nachricht wie folgt:

%Vor%

Was ist besser, aber nicht genau das, was ich will - Wir haben eine Reihe von numerischen Fehlercodes angegeben, die clientseitig auf detaillierte Fehlermeldungen abgebildet werden. Ich möchte nur den entsprechenden Fehlercode ausgeben (den ich vor der Ausgabe auswählen kann, vorzugsweise indem ich sehe, welche Art von Ausnahme aufgetreten ist), zum Beispiel:

%Vor%     
doque 22.10.2012, 14:48
quelle

2 Antworten

7

Sie möchten vielleicht die Form der Daten als Typ HttpError behalten, auch wenn Sie detaillierte Informationen über die tatsächliche Ausnahme verbergen möchten. Um dies zu tun, können Sie einen benutzerdefinierten DelegatingHandler hinzufügen, um den HttpError zu ändern, den Ihr Dienst auslöst.

Hier ist ein Beispiel, wie der DelegatingHandler aussehen könnte:

%Vor%     
Maggie Ying 22.10.2012, 18:37
quelle
2

Maggies Antwort hat auch für mich funktioniert. Danke für das Posten!

wollte nur ein paar Bits zu ihrem Code für zusätzliche Erläuterungen:

%Vor%

Wo:

%Vor%     
ewoo 18.07.2013 20:33
quelle