HttpException 建構函式
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
初始化 HttpException 類別的新執行個體。
多載
HttpException() |
初始化 HttpException 類別的新執行個體,並且建立空 HttpException 物件。 |
HttpException(String) |
使用所提供的錯誤訊息,初始化 HttpException 類別的新執行個體。 |
HttpException(Int32, String) |
使用 HTTP 回應狀態碼和錯誤訊息,初始化 HttpException 類別的新執行個體。 |
HttpException(SerializationInfo, StreamingContext) |
使用序列化資料,初始化 HttpException 類別的新執行個體。 |
HttpException(String, Exception) |
使用錯誤訊息和 HttpException 屬性,初始化 InnerException 類別的新執行個體。 |
HttpException(String, Int32) |
使用錯誤訊息和例外狀況代碼,初始化 HttpException 類別的新執行個體。 |
HttpException(Int32, String, Exception) |
使用 HTTP 回應狀態碼、錯誤訊息和 HttpException 屬性,初始化 InnerException 類別的新執行個體。 |
HttpException(Int32, String, Int32) |
使用 HTTP 回應狀態碼、錯誤訊息和例外狀況代碼,初始化 HttpException 類別的新執行個體。 |
HttpException()
初始化 HttpException 類別的新執行個體,並且建立空 HttpException 物件。
public:
HttpException();
public HttpException ();
Public Sub New ()
範例
下列程式代碼範例示範 HttpException 類別的 HttpException 建構函式。 方法 CheckNumber
會透過文字框接受使用者輸入的值,並檢查其是否為整數。 如果值不是整數,則會擲回例外狀況,然後建立並擲回新的 HttpException 物件。 該例外狀況會在事件處理程式中 Button_Click
攔截,而且錯誤訊息會顯示在瀏覽器中。
重要
這個範例有一個可接受使用者輸入的文字方塊,這可能會造成安全性威脅。 根據預設,ASP.NET Web 網頁會驗證使用者輸入未包含指令碼或 HTML 項目。 如需詳細資訊,請參閱 Script Exploits Overview (指令碼攻擊概觀)。
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>
Example for HttpException
</title>
<script language="C#" runat="server">
void CheckNumber()
{
try
{
// Check whether the value is an integer.
String convertInt = textbox1.Text;
Convert.ToInt32(convertInt);
}
catch(Exception e)
{
// Throw a 'HttpException' object.
throw new HttpException();
}
}
void Button_Click(Object sender, EventArgs e)
{
try
{
CheckNumber();
label1.Text = "The integer value you entered is: "+textbox1.Text;
}
catch(HttpException exp)
{
label1.Text = "<font color='red'>An HttpException was raised!:"
+ " The value entered in the textbox is not an integer.</font>";
}
}
void page_load(object sender,EventArgs e)
{
label1.Text="";
}
</script>
</head>
<body>
<center>
<h3>
Example for HttpException
</h3>
</center>
<form id="WebForm9" method="post" runat="server">
<center>
<br />
<b>Enter a value in the text box.</b>
<br />
<asp:TextBox Runat="server" ID="textbox1"></asp:TextBox>
<br />
<asp:Button Text="Click Here" OnClick="Button_Click" Runat="server"></asp:Button>
<br />
<b><asp:Label Runat="server" ID="label1"></asp:Label></b>
</center>
</form>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Example for HttpException</title>
<script language="VB" 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 the 'HttpException' object.
Throw New HttpException()
End Try
End Sub 'CheckNumber
Sub Button_Click(sender As [Object], e As EventArgs)
Try
CheckNumber()
label1.Text = "The integer value you entered is: " + textbox1.Text
Catch exp As HttpException
label1.Text = "<font color='red'>An HttpException was raised!:" _
& " The value entered in the textbox is not an integer</font>"
End Try
End Sub 'Button_Click
Sub Page_Load(sender As [Object], e As EventArgs)
label1.Text=""
End Sub
</script>
</head>
<body>
<center>
<h3>Example for HttpException</h3>
</center>
<form id="WebForm9" method="post" runat="server">
<center>
<b>Enter a value in the text box.</b>
<asp:TextBox Runat="server" ID="textbox1"></asp:TextBox>
<br />
<asp:Button Text="Click Here" OnClick="Button_Click" Runat="server"></asp:Button>
<br />
<b><asp:Label Runat="server" ID="label1"></asp:Label></b>
</center>
</form>
</body>
</html>
備註
處理例外狀況時,擷取一系列相關的例外狀況,並擲回外部例外狀況以響應內部例外狀況時很有用。
從外部例外狀況的 屬性取得 InnerException 造成外部例外狀況之內部例外狀況的參考。 此機制會保留先前例外狀況所攜帶的錯誤資訊,包括原始例外狀況,同時可讓您建立更有意義的外部例外狀況。 如需詳細資訊,請參閱InnerException。
另請參閱
適用於
HttpException(String)
使用所提供的錯誤訊息,初始化 HttpException 類別的新執行個體。
public:
HttpException(System::String ^ message);
public HttpException (string message);
new System.Web.HttpException : string -> System.Web.HttpException
Public Sub New (message As String)
參數
- message
- String
例外狀況擲回時,錯誤訊息會顯示在用戶端。
範例
下列程式代碼範例示範 HttpException 類別的 HttpException 建構函式。 HttpException如果使用者輸入的值是 0,則會擲回 。
重要
這個範例有一個可接受使用者輸入的文字方塊,這可能會造成安全性威脅。 根據預設,ASP.NET Web 網頁會驗證使用者輸入未包含指令碼或 HTML 項目。 如需詳細資訊,請參閱 Script Exploits Overview (指令碼攻擊概觀)。
if (Num == 0)
{
throw new HttpException("No value entered");
}
If Num = 0 Then
Throw New HttpException("No value entered")
end if
另請參閱
適用於
HttpException(Int32, String)
使用 HTTP 回應狀態碼和錯誤訊息,初始化 HttpException 類別的新執行個體。
public:
HttpException(int httpCode, System::String ^ message);
public HttpException (int httpCode, string message);
new System.Web.HttpException : int * string -> System.Web.HttpException
Public Sub New (httpCode As Integer, message As String)
參數
- httpCode
- Int32
傳送至用戶端並對應至這個錯誤的 HTTP 回應狀態碼。
- message
- String
例外狀況擲回時,錯誤訊息會顯示在用戶端。
另請參閱
適用於
HttpException(SerializationInfo, StreamingContext)
使用序列化資料,初始化 HttpException 類別的新執行個體。
protected:
HttpException(System::Runtime::Serialization::SerializationInfo ^ info, System::Runtime::Serialization::StreamingContext context);
protected HttpException (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
new System.Web.HttpException : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> System.Web.HttpException
Protected Sub New (info As SerializationInfo, context As StreamingContext)
參數
- info
- SerializationInfo
SerializationInfo,包含所擲回之例外狀況的相關序列化物件資料。
- context
- StreamingContext
StreamingContext,存放關於來源或目的端的內容資訊。
備註
在還原串行化期間會呼叫建 HttpException 構函式,以重新建構透過數據流傳輸的例外狀況物件。 如需詳細資訊,請參閱 < XML 和 SOAP 序列化。
另請參閱
適用於
HttpException(String, Exception)
使用錯誤訊息和 HttpException 屬性,初始化 InnerException 類別的新執行個體。
public:
HttpException(System::String ^ message, Exception ^ innerException);
public HttpException (string message, Exception innerException);
new System.Web.HttpException : string * Exception -> System.Web.HttpException
Public Sub New (message As String, innerException As Exception)
參數
- message
- String
例外狀況擲回時,錯誤訊息會顯示在用戶端。
- innerException
- Exception
擲回目前例外狀況的 InnerException (如果有的話)。
範例
下列程式代碼範例示範 HttpException 類別的 HttpException 建構函式。 方法 CheckNumber
會透過文字框接受使用者輸入的值,並檢查其是否為整數。 如果值不是整數,則會擲回例外狀況,然後在 catch 區塊中建立並擲回新的 HttpException 物件。 該例外狀況會在事件處理程式中 Button_Click
攔截,而且錯誤訊息會顯示在瀏覽器中。
重要
這個範例有一個可接受使用者輸入的文字方塊,這可能會造成安全性威脅。 根據預設,ASP.NET Web 網頁會驗證使用者輸入未包含指令碼或 HTML 項目。 如需詳細資訊,請參閱 Script Exploits Overview (指令碼攻擊概觀)。
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Example for HttpException</title>
<script language="C#" 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 object with a message.
throw new HttpException("THe value entered in the text box is not a integer", e);
}
}
void Button_Click(Object sender, EventArgs e)
{
try
{
CheckNumber();
label1.Text = "The integer value you entered is: " + textbox1.Text;
}
catch(HttpException exp)
{
// Display the exception thrown.
label1.Text = "<font color='red'>An HttpException was raised: " + exp.Message + "</font>";
Exception myInnerException = exp.InnerException;
label2.Text = "InnerException is : " + myInnerException.GetType();
}
}
void page_load(Object sender,EventArgs e)
{
label1.Text="";
label2.Text="";
}
</script>
</head>
<body>
<center>
<h3>Example for HttpException</h3>
</center>
<form id="Form1" method="post" runat="server">
<center>
<b>Enter the value in the text box </b>
<br />
<asp:TextBox Runat="server" ID="textbox1"></asp:TextBox>
<br />
<asp:Button Text="Click Here" OnClick="Button_Click" Runat="server" ID="Button1"></asp:Button>
<br />
<b>
<asp:Label Runat="server" ID="label1"></asp:Label>
<br />
<asp:Label Runat="server" ID="label2"></asp:Label>
</b>
</center>
</form>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Example for HttpException</title>
<script language="VB" 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 object with a message.
Throw New HttpException("The value entered in the textbox is not a integer", e)
End Try
End Sub 'CheckNumber
Sub Button_Click(sender As [Object], e As EventArgs)
Try
CheckNumber()
label1.Text = "The integer value you entered is: " + textbox1.Text
Catch exp As HttpException
' Display the exception thrown.
label1.Text = "<font color='red'>An HttpException was raised!: " + exp.Message + "</font>"
Dim myInnerException As Exception = exp.InnerException
label2.Text = "InnerException is : " + myInnerException.GetType().ToString()
End Try
End Sub 'Button_Click
Sub page_load(sender As [Object], e As EventArgs)
label1.Text=""
label2.Text=""
End Sub
</script>
</head>
<body>
<center>
<h3>Example for HttpException</h3>
<form id="WebForm9" method="post" runat="server">
<b>Enter the value in the text box </b>
<asp:TextBox Runat="server" ID="textbox1"></asp:TextBox>
<br />
<asp:Button Text="Click Here" OnClick="Button_Click" Runat="server" ID="Button1"></asp:Button>
<br />
<b>
<asp:Label Runat="server" ID="label1"></asp:Label>
<br />
<asp:Label Runat="server" ID="label2"></asp:Label>
</b>
</form>
</center>
</body>
</html>
備註
處理例外狀況時,擷取一系列相關的例外狀況,並擲回外部例外狀況以響應內部例外狀況時很有用。
從外部例外狀況的 屬性取得 InnerException 造成外部例外狀況之內部例外狀況的參考。 此機制會保留先前例外狀況所攜帶的錯誤資訊,包括原始例外狀況,同時可讓您建立更有意義的外部例外狀況。 如需詳細資訊,請參閱InnerException。
另請參閱
適用於
HttpException(String, Int32)
使用錯誤訊息和例外狀況代碼,初始化 HttpException 類別的新執行個體。
public:
HttpException(System::String ^ message, int hr);
public HttpException (string message, int hr);
new System.Web.HttpException : string * int -> System.Web.HttpException
Public Sub New (message As String, hr As Integer)
參數
- message
- String
例外狀況擲回時,錯誤訊息會顯示在用戶端。
- hr
- Int32
定義此錯誤的例外狀況代碼。
範例
下列程式代碼範例示範 HttpException 類別的 HttpException 建構函式。 HttpException如果使用者輸入的值是 0,則會擲回例外狀況。
重要
這個範例有一個可接受使用者輸入的文字方塊,這可能會造成安全性威脅。 根據預設,ASP.NET Web 網頁會驗證使用者輸入未包含指令碼或 HTML 項目。 如需詳細資訊,請參閱 Script Exploits Overview (指令碼攻擊概觀)。
if (Num == 0)
{
throw new HttpException("No value entered", 100);
}
If Num = 0 Then
Throw New HttpException("No value entered", 100)
end if
另請參閱
適用於
HttpException(Int32, String, Exception)
使用 HTTP 回應狀態碼、錯誤訊息和 HttpException 屬性,初始化 InnerException 類別的新執行個體。
public:
HttpException(int httpCode, System::String ^ message, Exception ^ innerException);
public HttpException (int httpCode, string message, Exception innerException);
new System.Web.HttpException : int * string * Exception -> System.Web.HttpException
Public Sub New (httpCode As Integer, message As String, innerException As Exception)
參數
- httpCode
- Int32
顯示在用戶端的 HTTP 回應狀態碼。
- message
- String
例外狀況擲回時,錯誤訊息會顯示在用戶端。
- innerException
- Exception
擲回目前例外狀況的 InnerException (如果有的話)。
範例
下列程式代碼範例示範 HttpException 類別的 HttpException 建構函式。 方法 CheckNumber
接受使用者輸入的值,並檢查它是否為整數。 如果值不是整數,則會擲回例外狀況,然後擲回新的 HttpException 物件,其中包含 HTTP 回應狀態代碼、例外狀況的訊息,以及任何內部例外狀況。 該例外狀況會在事件處理程式中 Button_Click
攔截,並顯示錯誤訊息、錯誤碼和內部例外狀況。
重要
這個範例有一個可接受使用者輸入的文字方塊,這可能會造成安全性威脅。 根據預設,ASP.NET Web 網頁會驗證使用者輸入未包含指令碼或 HTML 項目。 如需詳細資訊,請參閱 Script Exploits Overview (指令碼攻擊概觀)。
<%@ Import Namespace="System.Drawing" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Example for HttpException</title>
<script language="C#" runat="server">
void CheckNumber()
{
try
{
// Check whether the value is an integer.
String convertInt = textbox1.Text;
Convert.ToInt32(convertInt);
}
catch(Exception ex)
{
// Throw an HttpException object that contains the HTTP error code,
// message, and inner exception.
throw new HttpException(500, "The entered value is not an integer.", ex);
}
}
void Button_Click(Object sender, EventArgs e)
{
try
{
CheckNumber();
label1.Text = "The integer value you entered is: " + textbox1.Text;
}
catch(HttpException exp)
{
// Display the exception thrown.
label1.ForeColor = Color.Red;
label1.Text = "An HttpException was raised!: " + exp.Message;
Exception myInnerException = exp.InnerException;
// Display the inner exception.
label2.Text = "The InnerException is : " + myInnerException.GetType();
}
}
void page_load(Object sender,EventArgs e)
{
label1.Text="";
label2.Text="";
}
</script>
</head>
<body>
<center>
<h3>Example for HttpException</h3>
<form id="WebForm9" method="post" runat="server">
<b>Enter the value in the text box </b>
<br />
<asp:TextBox Runat="server" ID="textbox1"></asp:TextBox>
<br />
<asp:Button Text="Click Here" OnClick="Button_Click" Runat="server" ID="Button1"></asp:Button>
<br />
<b>
<asp:Label Runat="server" ID="label1"></asp:Label>
<br />
<asp:Label Runat="server" ID="label2"></asp:Label>
</b>
</form>
</center>
</body>
</html>
<%@ Import Namespace="System.Drawing" %>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Example for HttpException</title>
<script language="VB" runat="server">
Sub CheckNumber()
Try
'Check whether the value is integer.
Dim convertInt As [String] = textbox1.Text
Convert.ToInt32(convertInt)
Catch ex As Exception
' Throw an HttpException object that contains the HTTP error code,
' message, and inner exception.
Throw New HttpException(500, "The entered value is not an integer.", ex)
End Try
End Sub
Sub Button_Click(sender As [Object], e As EventArgs)
Try
CheckNumber()
label1.Text = "The integer Value you entered is: " & textbox1.Text
Catch exp As HttpException
' Display the Exception thrown.
label1.ForeColor = Color.Red
label1.Text = "An HttpException was raised: " & exp.Message
Dim myInnerException As Exception = exp.InnerException
' Display the inner exception.
label2.Text = "InnerException is : " & myInnerException.GetType().ToString()
End Try
End Sub
Sub page_load(sender As [Object], e As EventArgs)
label1.Text = ""
label2.Text = ""
End Sub
</script>
</head>
<body>
<center>
<h3>Example for HttpException</h3>
<form id="WebForm9" method="post" runat="server">
<b>Enter the value in the text box.</b>
<asp:TextBox Runat="server" ID="textbox1"></asp:TextBox>
<br />
<asp:Button Text="Click Here" OnClick="Button_Click" Runat="server" ID="Button1"></asp:Button>
<br />
<b>
<asp:Label Runat="server" ID="label1"></asp:Label>
<br />
<asp:Label Runat="server" ID="label2"></asp:Label>
</b>
</form>
</center>
</body>
</html>
備註
處理例外狀況時,擷取一系列相關的例外狀況,並擲回外部例外狀況以響應內部例外狀況時很有用。
從外部例外狀況的 屬性取得 InnerException 造成外部例外狀況之內部例外狀況的參考。 此機制會保留先前例外狀況所攜帶的錯誤資訊,包括原始例外狀況,同時可讓您建立更有意義的外部例外狀況。 如需詳細資訊,請參閱InnerException。
另請參閱
適用於
HttpException(Int32, String, Int32)
使用 HTTP 回應狀態碼、錯誤訊息和例外狀況代碼,初始化 HttpException 類別的新執行個體。
public:
HttpException(int httpCode, System::String ^ message, int hr);
public HttpException (int httpCode, string message, int hr);
new System.Web.HttpException : int * string * int -> System.Web.HttpException
Public Sub New (httpCode As Integer, message As String, hr As Integer)
參數
- httpCode
- Int32
顯示在用戶端的 HTTP 回應狀態碼。
- message
- String
例外狀況擲回時,錯誤訊息會顯示在用戶端。
- hr
- Int32
定義此錯誤的例外狀況代碼。
範例
下列程式代碼範例示範 HttpException 類別的 HttpException 建構函式。 使用者名稱和電子郵件資訊是由使用者在提供的文字框中輸入。 如果有任何文本框保留空白, HttpException 則會建立並擲回物件。 的錯誤碼 HttpException 是由 GetHttpCode 方法取得,並顯示在網頁上。
重要
這個範例有一個可接受使用者輸入的文字方塊,這可能會造成安全性威脅。 根據預設,ASP.NET Web 網頁會驗證使用者輸入未包含指令碼或 HTML 項目。 如需詳細資訊,請參閱 Script Exploits Overview (指令碼攻擊概觀)。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HttpException Example</title>
<script language="C#" runat="server">
void SubmitButton_Click(Object sender, EventArgs e)
{
try
{
if(Textbox1.Text.Length==0 || Textbox2.Text.Length==0)
{
// Raise an Exception if the username or the emailfield field is empty.
throw new HttpException(901,"User name or email ID not provided.",333);
}
else
{
MyLabel.Text="Hello "+Textbox1.Text+"<br />";
MyLabel.Text+="The Weekly newsletter is mailed to :"+
Textbox2.Text+"<br />";
}
}
catch(HttpException ex)
{
// Display the error code returned by the GetHttpCode method.
MyLabel.Text="<h4><font color=\"red\">The exception is "+
ex.GetHttpCode() +" - "+ ex.Message + "</font></h4>";
}
}
void Page_Load(object sender,EventArgs e)
{
MyLabel.Text="";
}
</script>
</head>
<body>
<form runat="server" id="Form1">
<h3>HttpException Example</h3>
Enter UserName and Email
<br /><br />
UserName :
<asp:TextBox ID="Textbox1" Runat="server"></asp:TextBox>
<br />
Email ID :
<asp:TextBox ID="Textbox2" Runat="server"></asp:TextBox>
<asp:Button ID="Button1" Text="Submit" OnClick="SubmitButton_Click" runat="server" />
<br />
<asp:label id="MyLabel" runat="server" />
</form>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HttpException Example</title>
<script language="VB" runat="server">
Sub SubmitButton_Click(sender As Object, e As EventArgs)
Try
If Textbox1.Text.Length = 0 Or Textbox2.Text.Length = 0 Then
' Raise an Exception if the username or emailid field is empty.
Throw New HttpException(901, "User name or email ID not provided", 333)
Else
MyLabel.Text = "Hello " & Textbox1.Text & "<br />"
MyLabel.Text += "The Weekly newsletter is mailed to :" & Textbox2.Text & "<br />"
End If
Catch ex As HttpException
' Display the error code returned by the GetHttpCode method.
MyLabel.Text = "<h4><font color=""red"">The exception is " & ex.GetHttpCode() & _
" - " & ex.Message & "</font></h4>"
End Try
End Sub
Sub Page_Load(sender As Object, e As EventArgs)
MyLabel.Text = ""
End Sub
</script>
</head>
<body>
<form runat="server" id="Form1">
<h3>HttpException Example</h3>
Enter User name and Email
<br /><br />
User Name:
<asp:TextBox ID="Textbox1" Runat="server"></asp:TextBox>
<br />
Email ID:
<asp:TextBox ID="Textbox2" Runat="server"></asp:TextBox>
<asp:Button ID="Button1" Text="Submit" OnClick="SubmitButton_Click" runat="server"/>
<br />
<asp:label id="MyLabel" runat="server"/>
</form>
</body>
</html>