Obtener Error El último servidor sin necesidad de utilizar la página Global.asax

StackOverflow https://stackoverflow.com/questions/3802726

  •  25-09-2019
  •  | 
  •  

Pregunta

Me han establecido error personalizado en mi servidor y estoy volver a dirigir a una página como se muestra a continuación

<customErrors mode="On"> 
   <error statusCode="500" redirect="/servererror/default.aspx" /> 
</customErrors>

Cuando se llega a la página servererror/default.aspx lo necesito para enviar un correo electrónico a mí con la exception.message

Esto es lo que estoy tratando, pero no va a funcionar

Sub Page_load(ByVal sender As Object, ByVal e As EventArgs)

     Dim LastError As Exception
     Dim ErrMessage As String

     LastError = Server.GetLastError()


        ErrMessage = LastError.Message


Dim Errormail = New MailMessage

     'Send email to me
     Errormail.To           = "email@email.co.uk"

     Errormail.From         = "servererror@email.co.uk"
     Errormail.Subject      = "Server Error Alert"
     Errormail.BodyFormat   = MailFormat.Text
     Errormail.Priority     = MailPriority.Normal
     Errormail.Body         = ErrMessage

     SmtpMail.SmtpServer    = "localhost"

     SmtpMail.Send(Errormail)

     Server.ClearError()
End Sub

Cualquier ayuda sería muy apreciada

Gracias

Jamie

¿Fue útil?

Solución

Mira aquí: ASP.NET página de error personalizada - Server.GetLastError () es nulo

es necesario agregar la redirectmode:

<customErrors mode="On" redirectMode="ResponseRewrite"> 
   <error statusCode="500" redirect="/servererror/default.aspx" /> 
</customErrors>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top