son quien quedar que puedo pelicula pasa los libro espontaneamente embarazada dios despues creo con bebes bebe arrepiento angeles alma abortos aborto aborte abortando abortados abortado asp.net multithreading server.transfer

asp.net - quien - que pasa con el alma de un bebe abortado espontaneamente



El hilo estaba siendo abortado (6)

Caling Server.Transfer llamará a Response.End, que siempre arroja una ThreadAbortException. Esta es una excepción "especial" porque, aunque se puede atrapar en un bloque catch, siempre se volverá a lanzar al final del bloque catch. Me gustaría que el registro de errores ignore ThreadAbortExceptions.

Estoy usando Server.Transfer . Todo funciona bien, pero el registro de excepción muestra la siguiente excepción.

System.Threading.ThreadAbortException: Thread was being aborted. at System.Threading.Thread.AbortInternal() at System.Threading.Thread.Abort(Object stateInfo) at System.Web.HttpResponse.End() at System.Web.HttpServerUtility.Transfer(String path, Boolean preserveForm) at System.Web.HttpServerUtility.Transfer(String path)

Cualquier idea para evitar la excepción anterior.


Esta excepción es lanzada por la llamada a Server.Transfer para detener la ejecución del método actual; exactamente lo mismo se lanza si lo hace Response.Redirect .

Las dos opciones que tienes son:

  • Capture y vuelva a lanzar ThreadAbortException / reperform the Server.Transfer
  • Asegúrese de que solo hace Server.Transfer en lugares donde no lo Server.Transfer (recomendado)

EDITAR: Raspe eso, http://support.microsoft.com/kb/312629 tiene un par de otras sugerencias para probar, pero todavía recomiendo el n. ° 2 anterior.



Otra forma de resolver esto es detectar el error generado y no volver a lanzarlo:

catch (ThreadAbortException) { }


Reemplazar Response.End() con HttpContext.Current.ApplicationInstance.CompleteRequest();