Ich muss meine Benutzer global umleiten, wenn ein benutzerdefinierter Fehler in meiner Anwendung ausgelöst wird. Ich habe versucht, etwas Logik in meine global.asax-Datei zu setzen, um nach meinem benutzerdefinierten Fehler zu suchen, und wenn er ausgelöst wird, führe eine Weiterleitung durch, aber meine Anwendung trifft nie meine global.asax-Methode. Es gibt mir einen Fehler, der besagt, dass meine Ausnahme nicht vom Benutzercode behandelt wurde.
hier ist, was ich in meinem globalen haben.
%Vor%und meine Ausnahme wird wie folgt ausgelöst:
%Vor%Wenn ich das in einen try-catch innerhalb der Datei setze, die die Ausnahme auslöst, wird meine Application_Error-Methode nie erreicht. Jeder hat einige Vorschläge, wie ich das global handhaben kann (Umgang mit meiner benutzerdefinierten Ausnahme)?
danke.
15.01.2010 bearbeiten: Hier ist, was in Sachen ist.
%Vor% Sie möchten einen Kundenfilter für Ihre Controller / Aktionen erstellen. Sie müssen von FilterAttribute
und IExceptionFilter
erben.
In etwa so:
%Vor%Sobald Sie es erstellt haben, können Sie das Attribut auf einen BaseController anwenden, von dem alle anderen Controller erben, um die Funktionalität für die Site zu erweitern.
Diese zwei Artikel könnten helfen:
Ich fand diese Antwort (und Frage) hilfreich. Asp.net mvc überschreibt die OnException im Basis-Controller weiterhin auf Application_Error
Was Sie vermissen, ist, dass Sie Ihren eigenen Filter zum FilterConfig.cs
in Ihrem App_Start
-Ordner hinzufügen müssen:
Tags und Links asp.net-mvc exception-handling redirect