HttpException HttpException HttpException HttpException Class

정의

HTTP 요청을 처리하는 동안 발생한 예외를 설명합니다.Describes an exception that occurred during the processing of HTTP requests.

public ref class HttpException : System::Runtime::InteropServices::ExternalException
[System.Serializable]
public class HttpException : System.Runtime.InteropServices.ExternalException
type HttpException = class
    inherit ExternalException
Public Class HttpException
Inherits ExternalException
상속
파생
특성

예제

다음 코드 예제를 사용 하는 방법에 설명 합니다 HttpException 클래스를 사용자 지정된 예외를 발생 시킵니다.The following code example demonstrates how to use the HttpException class to raise customized exceptions. 합니다 Button_Click 메서드 확인 단추 클릭 했을 한 다음 중 하나를 호출 합니다 CheckNumber 또는 CheckBoolean 메서드.The Button_Click method determines which button was clicked, and then calls either the CheckNumber or CheckBoolean method. 텍스트 상자에 사용자가 입력 한 값을 예상 형식에 해당 하지 않는 경우는 HttpException 예외 생성 되어 오류 유형에 따라 사용자 지정된 메시지를 throw 합니다.If the user-entered value in the text box does not correspond to the expected type, an HttpException exception is created and thrown with a customized message based on the error type.

중요

이 예제에는 사용자 입력을 허용하는 텍스트 상자가 있으므로 보안상 위험할 수 있습니다.This example has a text box that accepts user input, which is a potential security threat. 기본적으로 ASP.NET 웹 페이지는 사용자 입력 내용에 스크립트 또는 HTML 요소가 포함되어 있지 않은지 확인합니다.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. 자세한 내용은 Script Exploits Overview를 참조하세요.For more information, see Script Exploits Overview.

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
    void CheckNumber()
    {
        try
        {
            // Check whether the value is an integer.
            String convertInt = textbox1.Text;
            Convert.ToInt32(convertInt);
        }
        catch (Exception e)
        {
            // Throw an HttpException with customized message.
            throw new HttpException("not an integer");
        }
    }
    void CheckBoolean()
    {
        try
        {
            // Check whether the value is an boolean.
            String convertBool = textbox1.Text;
            Convert.ToBoolean(convertBool);
        }
        catch (Exception e)
        {
            // Throw an HttpException with customized message.
            throw new HttpException("not a boolean");
        }
    }

    void Button_Click(Object sender, EventArgs e)
    {
        try
        {
            // Check to see which button was clicked.
            Button b = (Button)sender;
            if (b.ID.StartsWith("button1"))
                CheckNumber();
            else if (b.ID.StartsWith("button2"))
                CheckBoolean();

            label1.Text = "You entered: " + textbox1.Text;
            label1.ForeColor = System.Drawing.Color.Black;
        }
        // Catch the HttpException.
        catch (HttpException exp)
        {
            label1.Text = "An HttpException was raised. "
               + "The value entered in the textbox is " + exp.Message.ToString();
            label1.ForeColor = System.Drawing.Color.Red;
        }
    }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>HttpException Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <br />
        <b>Enter a value in the text box.</b>
        <br />
        <asp:TextBox ID="textbox1" 
                     Runat="server">
        </asp:TextBox>
        <br />
        <asp:Button ID="button1"
                    Text="Check for integer."  
                    OnClick="Button_Click" 
                    Runat="server">
        </asp:Button>
        <br />
        <asp:Button ID="button2"
                    Text="Check for boolean." 
                    OnClick="Button_Click" 
                    Runat="server">
        </asp:Button>
        <br />
        <asp:Label ID="label1" 
                   Runat="server">
        </asp:Label>    
    </div>
    </form>
</body>
</html>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
  Sub CheckNumber()
    
    Try

      ' Check whether the value is an integer.
      Dim convertInt As String = textbox1.Text
      Convert.ToInt32(convertInt)

    Catch e As Exception

      ' Throw an HttpException with customized message.
      Throw New HttpException("not an integer")

    End Try

  End Sub

  Sub CheckBoolean()
    
    Try

      ' Check whether the value is an boolean.
      Dim convertBool As String = textbox1.Text
      Convert.ToBoolean(convertBool)

    Catch e As Exception

      ' Throw an HttpException with customized message.
      Throw New HttpException("not a boolean")

    End Try

  End Sub

  Sub Button_Click(ByVal sender As [Object], ByVal e As EventArgs)
    
    Try

      ' Check to see which button was clicked.
      Dim b As Button = CType(sender, Button)
      If b.ID.StartsWith("button1") Then
        CheckNumber()
      ElseIf b.ID.StartsWith("button2") Then
        CheckBoolean()
      End If

      label1.Text = "You entered: " + textbox1.Text
      label1.ForeColor = System.Drawing.Color.Black

      ' Catch the HttpException.
    Catch exp As HttpException

      label1.Text = "An HttpException was raised. " + "The value entered in the textbox is " + exp.Message.ToString()
      label1.ForeColor = System.Drawing.Color.Red

    End Try

  End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>HttpException Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <br />
        <b>Enter a value in the text box.</b>
        <br />
        <asp:TextBox ID="textbox1" 
                     Runat="server">
        </asp:TextBox>
        <br />
        <asp:Button ID="button1"
                    Text="Check for integer."  
                    OnClick="Button_Click" 
                    Runat="server">
        </asp:Button>
        <br />
        <asp:Button ID="button2"
                    Text="Check for boolean." 
                    OnClick="Button_Click" 
                    Runat="server">
        </asp:Button>
        <br />
        <asp:Label ID="label1" 
                   Runat="server">
        </asp:Label>    
    </div>
    </form>
</body>
</html>

설명

HttpException 클래스는 예외 정보를 생성 하는 ASP.NET을 사용 하도록 설정 하는 HTTP 관련 예외 클래스입니다.The HttpException class is an HTTP-specific exception class that enables ASP.NET to generate exception information. Throw 하 고 예외를 처리 하는 방법에 대 한 자세한 내용은 참조 하세요. 예외합니다.For more information about throwing and handling exceptions, see Exceptions.

생성자

HttpException() HttpException() HttpException() HttpException()

HttpException 클래스의 새 인스턴스를 초기화하여 빈 HttpException 개체를 만듭니다.Initializes a new instance of the HttpException class and creates an empty HttpException object.

HttpException(Int32, String) HttpException(Int32, String) HttpException(Int32, String) HttpException(Int32, String)

HTTP 응답 상태 코드 및 오류 메시지를 사용하여 HttpException 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the HttpException class using an HTTP response status code and an error message.

HttpException(Int32, String, Exception) HttpException(Int32, String, Exception) HttpException(Int32, String, Exception) HttpException(Int32, String, Exception)

HTTP 응답 상태 코드, 오류 메시지 및 HttpException 속성을 사용하여 InnerException 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the HttpException class using an HTTP response status code, an error message, and the InnerException property.

HttpException(Int32, String, Int32) HttpException(Int32, String, Int32) HttpException(Int32, String, Int32) HttpException(Int32, String, Int32)

HTTP 응답 상태 코드, 오류 메시지 및 예외 코드를 사용하여 HttpException 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the HttpException class using an HTTP response status code, an error message, and an exception code.

HttpException(SerializationInfo, StreamingContext) HttpException(SerializationInfo, StreamingContext) HttpException(SerializationInfo, StreamingContext) HttpException(SerializationInfo, StreamingContext)

serialize된 데이터를 사용하여 HttpException 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the HttpException class with serialized data.

HttpException(String) HttpException(String) HttpException(String) HttpException(String)

제공된 오류 메시지를 사용하여 HttpException 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the HttpException class using a supplied error message.

HttpException(String, Exception) HttpException(String, Exception) HttpException(String, Exception) HttpException(String, Exception)

오류 메시지와 HttpException 속성을 사용하여 InnerException 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the HttpException class using an error message and the InnerException property.

HttpException(String, Int32) HttpException(String, Int32) HttpException(String, Int32) HttpException(String, Int32)

오류 메시지와 예외 코드를 사용하여 HttpException 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the HttpException class using an error message and an exception code.

속성

Data Data Data Data

예외에 대한 사용자 정의 추가 정보를 제공하는 키/값 쌍의 컬렉션을 가져옵니다.Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(Inherited from Exception)
ErrorCode ErrorCode ErrorCode ErrorCode

오류의 HRESULT를 가져옵니다.Gets the HRESULT of the error.

(Inherited from ExternalException)
HelpLink HelpLink HelpLink HelpLink

이 예외와 연결된 도움말 파일에 대한 링크를 가져오거나 설정합니다.Gets or sets a link to the help file associated with this exception.

(Inherited from Exception)
HResult HResult HResult HResult

특정 예외에 할당된 코드화된 숫자 값인 HRESULT를 가져오거나 설정합니다.Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(Inherited from Exception)
InnerException InnerException InnerException InnerException

현재 예외를 발생시킨 Exception 인스턴스를 가져옵니다.Gets the Exception instance that caused the current exception.

(Inherited from Exception)
Message Message Message Message

현재 예외를 설명하는 메시지를 가져옵니다.Gets a message that describes the current exception.

(Inherited from Exception)
Source Source Source Source

오류를 발생시키는 애플리케이션 또는 개체의 이름을 가져오거나 설정합니다.Gets or sets the name of the application or the object that causes the error.

(Inherited from Exception)
StackTrace StackTrace StackTrace StackTrace

호출 스택의 직접 실행 프레임에 대한 문자열 표현을 가져옵니다.Gets a string representation of the immediate frames on the call stack.

(Inherited from Exception)
TargetSite TargetSite TargetSite TargetSite

현재 예외를 throw하는 메서드를 가져옵니다.Gets the method that throws the current exception.

(Inherited from Exception)
WebEventCode WebEventCode WebEventCode WebEventCode

HTTP 예외와 연결된 이벤트 코드를 가져옵니다.Gets the event codes that are associated with the HTTP exception.

메서드

CreateFromLastError(String) CreateFromLastError(String) CreateFromLastError(String) CreateFromLastError(String)

Windows API GetLastError() 메서드에서 반환되는 오류 코드를 기반으로 하는 새 HttpException 예외를 만듭니다.Creates a new HttpException exception based on the error code that is returned from the Windows API GetLastError() method.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetBaseException() GetBaseException() GetBaseException() GetBaseException()

파생 클래스에서 재정의되었을 때, 하나 이상의 후속 예외의 근본 원인이 되는 Exception을 반환합니다.When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(Inherited from Exception)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(Inherited from Object)
GetHtmlErrorMessage() GetHtmlErrorMessage() GetHtmlErrorMessage() GetHtmlErrorMessage()

HTML 오류 메시지를 가져와 클라이언트에게 반환합니다.Gets the HTML error message to return to the client.

GetHttpCode() GetHttpCode() GetHttpCode() GetHttpCode()

HTTP 상태 응답 코드를 가져와 클라이언트에게 반환합니다.Gets the HTTP response status code to return to the client.

GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext)

예외에 대한 정보를 가져와 SerializationInfo 개체에 추가합니다.Gets information about the exception and adds it to the SerializationInfo object.

GetType() GetType() GetType() GetType()

현재 인스턴스의 런타임 형식을 가져옵니다.Gets the runtime type of the current instance.

(Inherited from Exception)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

오류의 HRESULT가 들어 있는 문자열을 반환합니다.Returns a string that contains the HRESULT of the error.

(Inherited from ExternalException)

이벤트

SerializeObjectState SerializeObjectState SerializeObjectState SerializeObjectState

예외에 대한 serialize된 데이터가 들어 있는 예외 상태 개체가 만들어지도록 예외가 serialize될 때 발생합니다.Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(Inherited from Exception)

적용 대상

추가 정보