Необработанные исключения с Global.asax

Выход из местозаполнителей gotpl возможен с помощью обратных тиков . Например, в вашем сценарии вместо использования {{ pod }} вы можете написать {{` {{ pod }} `}}.

11
задан Ronnie Overby 24 February 2009 в 23:58
поделиться

2 ответа

Если это - приложение ASP.NET, которое тег предполагают, что это, необходимо смочь сделать что-то вроде этого... ctx. Запрос. URL. ToString () дал бы Вам имя файла того, где ошибка произошла.

protected void Application_Error(object sender, EventArgs e)
{
    MailMessage msg = new MailMessage();
    HttpContext ctx = HttpContext.Current;

    msg.To.Add(new MailAddress("me@me.com"));
    msg.From = new MailAddress("from@me.com");
    msg.Subject = "My app had an issue...";
    msg.Priority = MailPriority.High;

    StringBuilder sb = new StringBuilder();
    sb.Append(ctx.Request.Url.ToString() + System.Environment.NewLine);
    sb.Append("Source:" + System.Environment.NewLine + ctx.Server.GetLastError().Source.ToString());
    sb.Append("Message:" + System.Environment.NewLine + ctx.Server.GetLastError().Message.ToString());
    sb.Append("Stack Trace:" + System.Environment.NewLine + ctx.Server.GetLastError().StackTrace.ToString());
    msg.Body = sb.ToString();

    //CONFIGURE SMTP OBJECT
    SmtpClient smtp = new SmtpClient("myhost");

    //SEND EMAIL
    smtp.Send(msg);

    //REDIRECT USER TO ERROR PAGE
    Server.Transfer("~/ErrorPage.aspx");
}
12
ответ дан 3 December 2019 в 09:21
поделиться

В Visual Studio необходимо установить сборку конечных версий для генерации отладочной информации. В отличие от этого, в отладочной сборке, это не установлено по умолчанию. Это даст Вам полное отслеживание стека исключительной ситуации.

Даже затем оптимизации, сделанные JIT-компилятором (такие как встраивание), могут означать, что Вы не получаете правильный номер строки в своем отслеживании стека. Если Вы хотите быть уверенными в номере строки, можно также установить сборку конечных версий на "никакую оптимизацию". Но это может означать, что Ваше приложение имеет более низкую производительность, и/или пропускная способность (последний склоняется tobe более важный в веб-приложении).

Править: Можно найти, "генерируют отладочную информацию" установка путем движения в окно Solution Explorer, щелчка правой кнопкой по проекту и выбора пункта меню "Properties". Затем перейдите к Свойствам Конфигурации>, Сборка> Генерирует Отладочную информацию и установила на TRUE или FALSE. Установка Optimize Code находится в том же окне.

0
ответ дан 3 December 2019 в 09:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: