HttpException Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Describe una excepción que se produjo durante el procesamiento de solicitudes HTTP.
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
- Herencia
- Derivado
- Atributos
Ejemplos
En el ejemplo de código siguiente se muestra cómo usar la HttpException clase para generar excepciones personalizadas. El Button_Click método determina qué botón se hizo clic y, a continuación, llama al CheckNumber método o CheckBoolean . Si el valor especificado por el usuario en el cuadro de texto no se corresponde con el tipo esperado, se crea una HttpException excepción y se produce con un mensaje personalizado basado en el tipo de error.
Importante
Este ejemplo tiene un cuadro de texto que acepta la entrada del usuario, que es una amenaza de seguridad potencial. De forma predeterminada, ASP.NET páginas web validan que la entrada del usuario no incluye elementos HTML ni de script. Para obtener más información, consulte Información general sobre vulnerabilidades de seguridad de script.
<%@ 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 que ASP.NET genere información de excepción. Para obtener más información sobre cómo iniciar y controlar excepciones, vea Excepciones.
Constructores
| Nombre | Description |
|---|---|
| HttpException() |
Inicializa una nueva instancia de la HttpException clase y crea un objeto vacío HttpException . |
| HttpException(Int32, String, Exception) |
Inicializa una nueva instancia de la HttpException clase mediante un código de estado de respuesta HTTP, un mensaje de error y la InnerException propiedad . |
| HttpException(Int32, String, Int32) |
Inicializa una nueva instancia de la HttpException clase mediante un código de estado de respuesta HTTP, un mensaje de error y un código de excepción. |
| HttpException(Int32, String) |
Inicializa una nueva instancia de la HttpException clase mediante un código de estado de respuesta HTTP y un mensaje de error. |
| HttpException(SerializationInfo, StreamingContext) |
Inicializa una nueva instancia de la HttpException clase con datos serializados. |
| HttpException(String, Exception) |
Inicializa una nueva instancia de la HttpException clase mediante un mensaje de error y la InnerException propiedad . |
| HttpException(String, Int32) |
Inicializa una nueva instancia de la HttpException clase mediante un mensaje de error y un código de excepción. |
| HttpException(String) |
Inicializa una nueva instancia de la HttpException clase utilizando un mensaje de error proporcionado. |
Propiedades
| Nombre | Description |
|---|---|
| Data |
Obtiene una colección de pares clave-valor que proporcionan información adicional definida por el usuario sobre la excepción. (Heredado de Exception) |
| ErrorCode |
Obtiene el |
| HelpLink |
Obtiene o establece un vínculo al archivo de ayuda asociado a esta excepción. (Heredado de Exception) |
| HResult |
Obtiene o establece HRESULT, un valor numérico codificado que se asigna a una excepción específica. (Heredado de Exception) |
| InnerException |
Obtiene la Exception instancia que provocó la excepción actual. (Heredado de Exception) |
| Message |
Obtiene un mensaje que describe la excepción actual. (Heredado de Exception) |
| Source |
Obtiene o establece el nombre de la aplicación o el objeto que provoca el error. (Heredado de Exception) |
| StackTrace |
Obtiene una representación de cadena de los fotogramas inmediatos en la pila de llamadas. (Heredado de Exception) |
| TargetSite |
Obtiene el método que produce la excepción actual. (Heredado de Exception) |
| WebEventCode |
Obtiene los códigos de evento asociados a la excepción HTTP. |
Métodos
| Nombre | Description |
|---|---|
| CreateFromLastError(String) |
Crea una nueva excepción HttpException basada en el código de error que se devuelve del método Windows API |
| Equals(Object) |
Determina si el objeto especificado es igual al objeto actual. (Heredado de Object) |
| GetBaseException() |
Cuando se reemplaza en una clase derivada, devuelve la Exception causa principal de una o varias excepciones posteriores. (Heredado de Exception) |
| GetHashCode() |
Actúa como la función hash predeterminada. (Heredado de Object) |
| GetHtmlErrorMessage() |
Obtiene el mensaje de error HTML que se va a devolver al cliente. |
| GetHttpCode() |
Obtiene el código de estado de respuesta HTTP que se va a devolver al cliente. |
| GetObjectData(SerializationInfo, StreamingContext) |
Obtiene información sobre la excepción y la agrega al SerializationInfo objeto . |
| GetObjectData(SerializationInfo, StreamingContext) |
Cuando se reemplaza en una clase derivada, establece con SerializationInfo información sobre la excepción. (Heredado de Exception) |
| GetType() |
Obtiene el tipo de tiempo de ejecución de la instancia actual. (Heredado de Exception) |
| MemberwiseClone() |
Crea una copia superficial del Objectactual. (Heredado de Object) |
| ToString() |
Devuelve una cadena que contiene el valor HRESULT del error. (Heredado de ExternalException) |
Eventos
| Nombre | Description |
|---|---|
| SerializeObjectState |
Se produce cuando se serializa una excepción para crear un objeto de estado de excepción que contiene datos serializados sobre la excepción. (Heredado de Exception) |