HttpException Clase

Definición

Describe una excepción que apareció durante el procesamiento de solicitudes 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
Herencia
Derivado
Atributos

Ejemplos

En el ejemplo de código siguiente se muestra cómo HttpException usar la clase para generar excepciones personalizadas.The following code example demonstrates how to use the HttpException class to raise customized exceptions. El Button_Click método determina en qué botón se hizo clic y, a continuación, CheckNumber llama CheckBoolean al método o.The Button_Click method determines which button was clicked, and then calls either the CheckNumber or CheckBoolean method. Si el valor especificado por el usuario en el cuadro de texto no se corresponde con el tipo esperado HttpException , se crea una excepción que se inicia con un mensaje personalizado basado en el tipo de error.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.

Importante

Este ejemplo tiene un cuadro de texto que acepta datos proporcionados por el usuario, lo que puede suponer una amenaza para la seguridad.This example has a text box that accepts user input, which is a potential security threat. De forma predeterminada, ASP.NET Web Pages valida que los datos proporcionados por el usuario no incluyen elementos HTML ni de script.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. Para más información, consulte Información general sobre los ataques mediante scripts.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>

Comentarios

La HttpException clase es una clase de excepción específica de http que permite a ASP.net generar información de excepción.The HttpException class is an HTTP-specific exception class that enables ASP.NET to generate exception information. Para obtener más información sobre cómo iniciar y controlar excepciones, vea excepciones.For more information about throwing and handling exceptions, see Exceptions.

Constructores

HttpException()

Inicializa una nueva instancia de la clase HttpException y crea un objeto HttpException vacío.Initializes a new instance of the HttpException class and creates an empty HttpException object.

HttpException(Int32, String)

Inicializa una nueva instancia de la clase HttpException utilizando un código de estado de respuesta HTTP y un mensaje de error.Initializes a new instance of the HttpException class using an HTTP response status code and an error message.

HttpException(Int32, String, Exception)

Inicializa una nueva instancia de la clase HttpException utilizando un código de estado de respuesta HTTP, un mensaje de error y la propiedad 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)

Inicializa una nueva instancia de la clase HttpException utilizando un código de estado de respuesta HTTP, un mensaje de error y un código de excepción.Initializes a new instance of the HttpException class using an HTTP response status code, an error message, and an exception code.

HttpException(SerializationInfo, StreamingContext)

Inicializa una nueva instancia de la clase HttpException con datos serializados.Initializes a new instance of the HttpException class with serialized data.

HttpException(String)

Inicializa una nueva instancia de la clase HttpException utilizando el mensaje de error especificado.Initializes a new instance of the HttpException class using a supplied error message.

HttpException(String, Exception)

Inicializa una nueva instancia de la clase HttpException utilizando un mensaje de error y la propiedad InnerException.Initializes a new instance of the HttpException class using an error message and the InnerException property.

HttpException(String, Int32)

Inicializa una nueva instancia de la clase HttpException utilizando un mensaje de error y un código de excepción.Initializes a new instance of the HttpException class using an error message and an exception code.

Propiedades

Data

Obtiene una colección de pares clave-valor que proporcionan más información definida por el usuario sobre la excepción.Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(Heredado de Exception)
ErrorCode

Obtiene el elemento HRESULT del error.Gets the HRESULT of the error.

(Heredado de ExternalException)
HelpLink

Obtiene o establece un vínculo al archivo de ayuda asociado a esta excepción.Gets or sets a link to the help file associated with this exception.

(Heredado de Exception)
HResult

Obtiene o establece HRESULT, un valor numérico codificado que se asigna a una excepción específica.Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(Heredado de Exception)
InnerException

Obtiene la instancia Exception que produjo la excepción actual.Gets the Exception instance that caused the current exception.

(Heredado de Exception)
Message

Obtiene un mensaje que describe la excepción actual.Gets a message that describes the current exception.

(Heredado de Exception)
Source

Devuelve o establece el nombre de la aplicación o del objeto que generó el error.Gets or sets the name of the application or the object that causes the error.

(Heredado de Exception)
StackTrace

Obtiene una representación de cadena de los marcos inmediatos en la pila de llamadas.Gets a string representation of the immediate frames on the call stack.

(Heredado de Exception)
TargetSite

Obtiene el método que produjo la excepción actual.Gets the method that throws the current exception.

(Heredado de Exception)
WebEventCode

Obtiene los códigos de evento asociados a la excepción HTTP.Gets the event codes that are associated with the HTTP exception.

Métodos

CreateFromLastError(String)

Crea una nueva excepción HttpException basada en el código de error devuelto por el método GetLastError() de la API de Windows.Creates a new HttpException exception based on the error code that is returned from the Windows API GetLastError() method.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
GetBaseException()

Cuando se reemplaza en una clase derivada, devuelve la clase Exception que representa la causa principal de una o más excepciones posteriores.When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(Heredado de Exception)
GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetHtmlErrorMessage()

Obtiene el mensaje de error HTML que se va a devolver al cliente.Gets the HTML error message to return to the client.

GetHttpCode()

Obtiene el código de estado de respuesta HTTP que se va a devolver al cliente.Gets the HTTP response status code to return to the client.

GetObjectData(SerializationInfo, StreamingContext)

Obtiene información sobre la excepción y la agrega al objeto SerializationInfo.Gets information about the exception and adds it to the SerializationInfo object.

GetType()

Obtiene el tipo de tiempo de ejecución de la instancia actual.Gets the runtime type of the current instance.

(Heredado de Exception)
MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
ToString()

Devuelve una cadena que contiene el HRESULT del error.Returns a string that contains the HRESULT of the error.

(Heredado de ExternalException)

Eventos

SerializeObjectState

Ocurre cuando una excepción se serializa para crear un objeto de estado de excepción que contenga datos serializados sobre la excepción.Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(Heredado de Exception)

Se aplica a

Consulte también: