ASP.NET 리디렉션에서 System.Threading.ThreadAbortException 처리
ASP.NET에서 Response.Redirect()
을 사용하면 때때로 System.Threading.ThreadAbortException
이 발생할 수 있습니다. 이는 리디렉션 후 서버가 현재 페이지 실행을 종료하기 때문에 발생합니다. endResponse
에서 true
을 Response.Redirect()
으로 설정하면 예외는 방지되지만 리디렉션 후 불필요한 처리가 허용되므로 비효율적입니다.
최선의 접근 방식
이상적인 해결책은 Response.Redirect()
을 endResponse
로 설정한 후 false
을 사용하는 것입니다. 예외 없이 깔끔하게 리디렉션됩니다.Context.ApplicationInstance.CompleteRequest()
<code class="language-csharp">Response.Redirect(url, false); Context.ApplicationInstance.CompleteRequest();</code>
단계로 즉시 진행하여 현재 페이지의 추가 처리를 방지하도록 지시합니다.EndRequest
추가 자료
핸들러 내 리디렉션 처리를 포함한 자세한 설명은 Thomas Marquardt의 통찰력 있는 블로그 게시물을 참조하세요(가능한 경우 블로그 게시물 링크가 여기에 삽입됩니다). 이 접근 방식은 ASP.NET 애플리케이션에서 효율적이고 예외 없는 리디렉션을 보장합니다.Application_Error
위 내용은 Response.Redirect 중에 System.Threading.ThreadAbortException을 방지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!