ASP.Net/Development/On Error

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

On Error GoTo HandleError

   <source lang="csharp">

<%@ Page Language=VB Debug=true %> <script runat=server> Sub SubmitBtn_Click(Sender As Object, E As EventArgs)

   On Error GoTo HandleError
   Dim TempResult as Integer
   TempResult = txtNumber1.Text / txtNumber2.Text
   lblResult.Text = "Result: " & TempResult
   Exit Sub
   
   HandleError:
       lblError.Text = "Unable to calculate due to this error: " _
           & Err.Description

End Sub </SCRIPT> <HTML> <HEAD> <TITLE>On Error Go To</TITLE> </HEAD> <BODY TEXT="black" LINK="darkred" VLINK="darkred" ALINK="red" LEFTMARGIN="40" TOPMARGIN="60"> <form runat="server"> <asp:Label

   id="lblMessage1"
   runat="Server"
   Text="Enter a Number"

/>
<asp:TextBox

   id="txtNumber1"
   runat="Server"

/>

<asp:Label

   id="lblMessage2"
   runat="Server"
   Text="Enter another Number"

/>
<asp:TextBox

   id="txtNumber2"
   runat="Server"

/>

<asp:Label

   id="lblResult"
   runat="Server"
   Text="Result: "

/>
<asp:Label

   id="lblError"
   runat="Server"

/>
<asp:Button

   id="butOK"
   text="  Go  "
   Type="Submit"
   OnClick="SubmitBtn_Click" 
   runat="server"

/> </Form> </BODY> </HTML>

      </source>
   
  


On Error Resume

   <source lang="csharp">

<%@ Page Language=VB Debug=true %> <script runat=server> Sub SubmitBtn_Click(Sender As Object, E As EventArgs)

   On Error GoTo HandleError
   Dim TempResult as Integer
   TempResult = txtNumber1.Text / txtNumber2.Text
   lblResult.Text = "Result: " & TempResult
   Exit Sub
   
   HandleError:
       lblError.Text = "Unable to calculate due to this error: " _
           & Err.Description
       Resume Next

End Sub </SCRIPT> <HTML> <HEAD> <TITLE>Go To with Resume</TITLE> </HEAD> <BODY TEXT="black" LINK="darkred" VLINK="darkred" ALINK="red" LEFTMARGIN="40" TOPMARGIN="60"> <form runat="server"> <asp:Label

   id="lblMessage1"
   runat="Server"
   Text="Enter a Number"

/>
<asp:TextBox

   id="txtNumber1"
   runat="Server"

/>

<asp:Label

   id="lblMessage2"
   runat="Server"
   Text="Enter another Number"

/>
<asp:TextBox

   id="txtNumber2"
   runat="Server"

/>

<asp:Label

   id="lblResult"
   runat="Server"
   Text="Result: "

/>
<asp:Label

   id="lblError"
   runat="Server"

/>
<asp:Button

   id="butOK"
   text="  Go  "
   Type="Submit"
   OnClick="SubmitBtn_Click" 
   runat="server"

/> </Form> </BODY> </HTML>

      </source>
   
  


Send out an email in case of page error

   <source lang="csharp">

<%@ Page Language="VB" %> <%@ Import Namespace="System.Web.Mail" %> <html> <head>

  <title>Throw an Error</title>
  <script runat="server">
     Sub Page_Load()
        Dim NullText As String = Nothing
        Message.Text = NullText.ToString()
     End Sub
     Sub Page_Error(Source As Object, E As EventArgs)
        Dim ex As Exception = Server.GetLastError()
        If Not ex Is Nothing Then
           Dim Mail as New MailMessage()
           "Change the values below to valid email addresses
           Mail.To = "yourEmailAddress@yourServer.ru"
           Mail.From = "fromEmail@fromEmail.ru"
           Mail.Subject = "error"
           Mail.Body = "An Exception occurred in page " & _
              Request.RawUrl & ":" & vbCrLf
           Mail.Body &= ex.ToString() & vbCrlf & vbCrlf
           Mail.Body &= "was handled from Page_Error."
           "If your SMTP server is not local, change the property below
           "   to a valid server or domain name for the SMTP server
           SmtpMail.SmtpServer = "localhost"
           SmtpMail.Send(Mail)
           Server.ClearError()
        End If
        Response.Write("An error has occurred. " & _
           "The site administrator has been notified.
" & _ "Please try your request again later.") End Sub </script>

</head> <body>

  <asp:label id="Message" runat="server"/>

</body> </html>

      </source>