Wenn ich Response.Redirect (...) verwende, um mein Formular auf eine neue Seite umzuleiten, wird folgende Fehlermeldung angezeigt:
Eine erste zufällige Ausnahme vom Typ 'System.Threading.ThreadAbortException' ist in mscorlib.dll aufgetreten.
Eine Ausnahme vom Typ 'System.Threading.ThreadAbortException' ist in mscorlib.dll aufgetreten, wurde jedoch nicht im Benutzercode behandelt
Mein Verständnis davon ist, dass der Fehler dadurch verursacht wird, dass der Webserver den Rest der Seite abbricht, auf der die response.redirect aufgerufen wurde.
Ich weiß, dass ich einen zweiten Parameter hinzufügen kann, der Response.Redirect
endResponse heißt. Wenn ich endResponse auf True setze, wird immer noch der Fehler angezeigt, aber wenn ich ihn auf False setze, tue ich das nicht. Ich bin mir jedoch ziemlich sicher, dass der Webserver den Rest der Seite ausführt, von der ich umgeleitet habe. Was gelinde gesagt ineffizient zu sein scheint. Gibt es einen besseren Weg, dies zu tun? Etwas anderes als Response.Redirect
oder gibt es eine Möglichkeit, die alte Seite zu zwingen, das Laden zu beenden, wo ich keine bekomme ThreadAbortException
?
Context.ApplicationInstance.CompleteRequest();
. Warum? Muss ichreturn
vom Event-Handler bedingt sein?