예외에서 IIS 하위 상태 코드를 얻으려면 어떻게합니까?
int errorCode = 500;
HttpApplication httpApp = (HttpApplication)sender;
try
{
if (httpApp.Server != null)
{
Exception ex;
for (ex = httpApp.Server.GetLastError(); ex != null; ex = ex.InnerException)
{
try
{
HttpException httpEx = ex as HttpException;
if (httpEx != null)
errorCode = httpEx.GetHttpCode();
// ... retrieve appropriate content based on errorCode
}
catch { }
}
}
GetHttpCode
HTTP status codes (예 : 302, 404, 503 등)의 경우 모든 것이 잘 작동합니다. 그러나
IIS status codes (예 : 401.5, 403.4 등)의 경우
GetHttpCode
에서 반환 값이 정수이므로이 값을 검색 할 수 있습니까?
+1. ** InnerException **을 사용하여 ** for 루프 ** 아이디어를 정말 좋아합니다. 이 IIS 오류 코드를 가져 오는 코드를 찾았습니까? – jp2code
FYI : 'Server.ClearError();'에 대한 호출을 표시하지 않도록 코드가 무시되었습니다.이 코드가 없으면 추가해야합니다. – jp2code