HttpException Classe

Définition

Décrit une exception qui s'est produite pendant le traitement de demandes 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
Héritage
Dérivé
Attributs

Exemples

L’exemple de code suivant montre comment utiliser la HttpException classe pour déclencher des exceptions personnalisées.The following code example demonstrates how to use the HttpException class to raise customized exceptions. La Button_Click méthode détermine le bouton sur lequel l’utilisateur a cliqué, puis appelle CheckNumber la CheckBoolean méthode ou.The Button_Click method determines which button was clicked, and then calls either the CheckNumber or CheckBoolean method. Si la valeur entrée par l’utilisateur dans la zone de texte ne correspond pas au type attendu, HttpException une exception est créée et levée avec un message personnalisé basé sur le type d’erreur.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.

Important

Cet exemple comprend une zone de texte qui accepte une entrée d'utilisateur, ce qui constitue une menace potentielle pour la sécurité.This example has a text box that accepts user input, which is a potential security threat. Par défaut, les pages web ASP.NET vérifient que l’entrée d’utilisateur n’inclut pas de script ou d’éléments HTML.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. Pour plus d’informations, consultez Vue d’ensemble des attaques de script.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>

Remarques

La HttpException classe est une classe d’exception spécifique à http qui permet à ASP.net de générer des informations sur les exceptions.The HttpException class is an HTTP-specific exception class that enables ASP.NET to generate exception information. Pour plus d’informations sur la génération et la gestion des exceptions, consultez exceptions.For more information about throwing and handling exceptions, see Exceptions.

Constructeurs

HttpException()

Initialise une nouvelle instance de la classe HttpException et crée un objet HttpException vide.Initializes a new instance of the HttpException class and creates an empty HttpException object.

HttpException(Int32, String)

Initialise une nouvelle instance de la classe HttpException à l'aide d'un code d'état de réponse HTTP et d'un message d'erreur.Initializes a new instance of the HttpException class using an HTTP response status code and an error message.

HttpException(Int32, String, Exception)

Initialise une nouvelle instance de la classe HttpException à l'aide d'un code d'état de réponse HTTP, d'un message d'erreur et de la propriété 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)

Initialise une nouvelle instance de la classe HttpException à l'aide d'un code d'état de réponse HTTP, d'un message d'erreur et d'un code d'exception.Initializes a new instance of the HttpException class using an HTTP response status code, an error message, and an exception code.

HttpException(SerializationInfo, StreamingContext)

Initialise une nouvelle instance de la classe HttpException avec des données sérialisées.Initializes a new instance of the HttpException class with serialized data.

HttpException(String)

Initialise une nouvelle instance de la classe HttpException à l'aide du message d'erreur fourni.Initializes a new instance of the HttpException class using a supplied error message.

HttpException(String, Exception)

Initialise une nouvelle instance de la classe HttpException avec le message d'erreur spécifié et la propriété InnerException.Initializes a new instance of the HttpException class using an error message and the InnerException property.

HttpException(String, Int32)

Initialise une nouvelle instance de la classe HttpException avec un message d'erreur et un code d'exception.Initializes a new instance of the HttpException class using an error message and an exception code.

Propriétés

Data

Obtient une collection de paires clé/valeur qui fournissent des informations supplémentaires définies par l’utilisateur sur l’exception.Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(Hérité de Exception)
ErrorCode

Obtient le HRESULT de l’erreur.Gets the HRESULT of the error.

(Hérité de ExternalException)
HelpLink

Obtient ou définit un lien vers le fichier d'aide associé à cette exception.Gets or sets a link to the help file associated with this exception.

(Hérité de Exception)
HResult

Obtient ou définit HRESULT, valeur numérique codée qui est assignée à une exception spécifique.Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(Hérité de Exception)
InnerException

Obtient l'instance Exception qui a provoqué l'exception actuelle.Gets the Exception instance that caused the current exception.

(Hérité de Exception)
Message

Obtient un message qui décrit l'exception actuelle.Gets a message that describes the current exception.

(Hérité de Exception)
Source

Obtient ou définit le nom de l'application ou de l'objet qui est à l'origine de l'erreur.Gets or sets the name of the application or the object that causes the error.

(Hérité de Exception)
StackTrace

Obtient une représentation sous forme de chaîne des frames immédiats sur la pile des appels.Gets a string representation of the immediate frames on the call stack.

(Hérité de Exception)
TargetSite

Obtient la méthode qui lève l'exception actuelle.Gets the method that throws the current exception.

(Hérité de Exception)
WebEventCode

Obtient les codes d'événement associés à l'exception HTTP.Gets the event codes that are associated with the HTTP exception.

Méthodes

CreateFromLastError(String)

Crée une exception HttpException fondée sur le code d'erreur retourné à partir de la méthode de l'API Windows GetLastError().Creates a new HttpException exception based on the error code that is returned from the Windows API GetLastError() method.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.Determines whether the specified object is equal to the current object.

(Hérité de Object)
GetBaseException()

En cas de substitution dans une classe dérivée, retourne la Exception qui est à l'origine d'une ou de plusieurs exceptions ultérieures.When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(Hérité de Exception)
GetHashCode()

Sert de fonction de hachage par défaut.Serves as the default hash function.

(Hérité de Object)
GetHtmlErrorMessage()

Obtient le message d'erreur HTML à retourner au client.Gets the HTML error message to return to the client.

GetHttpCode()

Obtient le code d'état de réponse HTTP à retourner au client.Gets the HTTP response status code to return to the client.

GetObjectData(SerializationInfo, StreamingContext)

Obtient des informations sur l'exception et les ajoute à l'objet SerializationInfo.Gets information about the exception and adds it to the SerializationInfo object.

GetType()

Obtient le type au moment de l'exécution de l'instance actuelle.Gets the runtime type of the current instance.

(Hérité de Exception)
MemberwiseClone()

Crée une copie superficielle du Object actuel.Creates a shallow copy of the current Object.

(Hérité de Object)
ToString()

Retourne une chaîne qui contient le HRESULT de l'erreur.Returns a string that contains the HRESULT of the error.

(Hérité de ExternalException)

Événements

SerializeObjectState

Se produit quand une exception est sérialisée pour créer un objet d'état d'exception qui contient des données sérialisées concernant l'exception.Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(Hérité de Exception)

S’applique à

Voir aussi