HttpException Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Describes an exception that occurred during the processing of HTTP requests.
public ref class HttpException : System::Runtime::InteropServices::ExternalException
public class HttpException : System.Runtime.InteropServices.ExternalException
[System.Serializable]
public class HttpException : System.Runtime.InteropServices.ExternalException
type HttpException = class
inherit ExternalException
[<System.Serializable>]
type HttpException = class
inherit ExternalException
Public Class HttpException
Inherits ExternalException
- Inheritance
- Derived
- Attributes
Examples
The following code example demonstrates how to use the HttpException class to raise customized exceptions. The Button_Click
method determines which button was clicked, and then calls either the CheckNumber
or CheckBoolean
method. 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
This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. 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>
Remarks
The HttpException class is an HTTP-specific exception class that enables ASP.NET to generate exception information. For more information about throwing and handling exceptions, see Exceptions.
Constructors
HttpException() |
Initializes a new instance of the HttpException class and creates an empty HttpException object. |
HttpException(Int32, String) |
Initializes a new instance of the HttpException class using an HTTP response status code and an error message. |
HttpException(Int32, String, Exception) |
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) |
Initializes a new instance of the HttpException class using an HTTP response status code, an error message, and an exception code. |
HttpException(SerializationInfo, StreamingContext) |
Initializes a new instance of the HttpException class with serialized data. |
HttpException(String) |
Initializes a new instance of the HttpException class using a supplied error message. |
HttpException(String, Exception) |
Initializes a new instance of the HttpException class using an error message and the InnerException property. |
HttpException(String, Int32) |
Initializes a new instance of the HttpException class using an error message and an exception code. |
Properties
Data |
Gets a collection of key/value pairs that provide additional user-defined information about the exception. (Inherited from Exception) |
ErrorCode |
Gets the |
HelpLink |
Gets or sets a link to the help file associated with this exception. (Inherited from Exception) |
HResult |
Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception. (Inherited from Exception) |
InnerException |
Gets the Exception instance that caused the current exception. (Inherited from Exception) |
Message |
Gets a message that describes the current exception. (Inherited from Exception) |
Source |
Gets or sets the name of the application or the object that causes the error. (Inherited from Exception) |
StackTrace |
Gets a string representation of the immediate frames on the call stack. (Inherited from Exception) |
TargetSite |
Gets the method that throws the current exception. (Inherited from Exception) |
WebEventCode |
Gets the event codes that are associated with the HTTP exception. |
Methods
CreateFromLastError(String) |
Creates a new HttpException exception based on the error code that is returned from the Windows API |
Equals(Object) |
Determines whether the specified object is equal to the current object. (Inherited from Object) |
GetBaseException() |
When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions. (Inherited from Exception) |
GetHashCode() |
Serves as the default hash function. (Inherited from Object) |
GetHtmlErrorMessage() |
Gets the HTML error message to return to the client. |
GetHttpCode() |
Gets the HTTP response status code to return to the client. |
GetObjectData(SerializationInfo, StreamingContext) |
Gets information about the exception and adds it to the SerializationInfo object. |
GetObjectData(SerializationInfo, StreamingContext) |
Obsolete.
When overridden in a derived class, sets the SerializationInfo with information about the exception. (Inherited from Exception) |
GetType() |
Gets the runtime type of the current instance. (Inherited from Exception) |
MemberwiseClone() |
Creates a shallow copy of the current Object. (Inherited from Object) |
ToString() |
Returns a string that contains the HRESULT of the error. (Inherited from ExternalException) |
Events
SerializeObjectState |
Obsolete.
Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception. (Inherited from Exception) |