ApplicationInstance.CompleteRequest stoppt nicht die Ausführung des darunter liegenden Codes?
Mir wurde gesagt, dass Respond.Redirect ein teurer Prozess ist, da es eine ThreadAbortException auslöst. Daher sollten wir stattdessen die CompleteRequest-Funktion verwenden. Also habe ich es ausprobiert, aber mir ist aufgefallen, dass die Codes darunter immer noch laufen, was ich nicht will. Ich möchte den Browser sofort zwingen, zu einer anderen Website zu springen.
Public Shared Sub TestCompleteRequest()
If 1 = 1 Then
System.Web.HttpContext.Current.Response.Redirect("Http://Google.com", False)
System.Web.HttpContext.Current.ApplicationInstance.CompleteRequest()
End If
Throw New ApplicationException("Hello, why are you here?")
End Sub
Wie für den obigen Code wird die ApplicationException weiterhin ausgelöst. Aber warum? :(