Получите последнюю ошибку Sever без использования страницы Global.Asax
-
25-09-2019 - |
Вопрос
Я настроил пользовательскую ошибку на моем сервере, и я перенаправляю на страницу, как показано ниже
<customErrors mode="On">
<error statusCode="500" redirect="/servererror/default.aspx" />
</customErrors>
Когда он доходит до страницы servererror/default.aspx
Мне нужно, чтобы отправить мне электронное письмо с exception.message
Вот что я пытаюсь, но это не будет работать
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
Любая помощь приветствуется
Спасибо
Джейми
Решение
Смотри сюда:Страница ошибок asp.net пользовательская ошибка - server.getlastastryror () - это нуль
Вам нужно добавить RedirectMode:
<customErrors mode="On" redirectMode="ResponseRewrite">
<error statusCode="500" redirect="/servererror/default.aspx" />
</customErrors>
Не связан с StackOverflow