2013-12-15 3 views
0

예외를 방지하기 위해 Response.Redirect(url, **false**);을 사용하고 있습니다. 그러나, 나는 그것 후에 CompleteRequest();를 사용하는 것이 좋습니다 것을 보았고, 나는 그것을 이해하지 못합니다. 예 : here on MSDN. 알다시피, CompleteRequest이 아니며은 실행을 종료합니다 (렌더링에는 영향을 미치지 만). 데이터베이스 쓰기와 같은 지속적인 결과를 가진 코드 인 이 적용됩니다. 따라서 코드를 중지하려면 return 등으로 관리해야합니다. Redirect 처리에는이 필요하지 않으며 이 아닙니다.CompleteRequest();

내 이해가 정확합니까? (위와 같은 링크로 인해 묻습니다.)

답변

0

이해하신 내용이 맞습니다. CompleteRequest()을 사용하면 ASP.NET 런타임에 요청에 대한 추가 처리가 필요하지 않으며 HTTP 파이프 라인의 모든 이벤트를 무시하고 EndRequest 이벤트를 직접 호출합니다. 그러나 나머지 코드 줄 실행을 중단하지는 않습니다. 데이터 손실을 막기 위해 요청을 정상적으로 끝내기 만하면됩니다.