我想简单地收到有关网站错误的通知,我有这个直接的代码可以在应用程序的任何地方工作,除了在global.asax !!
void Application_Error(object sender, EventArgs e)
{
UIHelper.SendErrorMessage(Server.GetLastError());
}
另一个项目中的代码:
public static void SendErrorMessage(Exception ex)
{
MailMessage errorMessage = new MailMessage();
errorMessage.From = new MailAddress("xxxxxx@gmail.com", "Site Errors");
errorMessage.Subject = "Error in sending overseas user";
errorMessage.CC.Add(new MailAddress("xxxxxxx@gmail.com", "xxxxx")); //test only
StringBuilder sb = new StringBuilder();
sb.AppendFormat("Source:{0}\n", ex.Source);
sb.AppendFormat("Message:{0}\n", ex.Message);
sb.AppendFormat("Stack Trace:{0}\n", ex.StackTrace);
sb.AppendFormat("Inner Exception:{0}\n", ex.InnerException == null ? string.Empty : ex.InnerException.Message);
errorMessage.Body = sb.ToString();
errorMessage.IsBodyHtml = false;
var smtp = new SmtpClient();
try
{
smtp.Send(errorMessage);
}
catch
{
}
}
更新:我已经编写了逻辑来将异常写入我网站上的文件夹中的文件,我在我的开发框中尝试了这个逻辑并且它有效,但它永远不会在主机中运行!!这让我抓狂!电子邮件逻辑在我的框中工作,文件记录在我的框中工作,但它们都不能在生产中工作?!这真奇怪......有什么想法吗?