zoukankan      html  css  js  c++  java
  • 一个比较好的.net 3.5的异常报告类

    实现的是当有异常时,发邮件报告 
    using System; 
    using System.Collections.Generic; 
    using System.Linq; 
    using System.Web; 
    using System.Net.Mail; 
    namespace Experiement 

        
    public static class MyExtension 
        { 
            
    public static void SendErrorEmail(this Exception ex) 
            { 
                MailMessage mailMessage 
    = new MailMessage(new MailAddress("from@gmail.com"
                                           , 
    new MailAddress("to@gmail.com")); 
                mailMessage.Subject 
    = "Exception Occured in your site"
                mailMessage.IsBodyHtml 
    = true
                System.Text.StringBuilder errorMessage 
    = new System.Text.StringBuilder(); 
                errorMessage.AppendLine(
    string.Format("<B>{0}</B>:{1}","Exception",ex.Message)); 
                errorMessage.AppendLine(
    string.Format("<B>{0}</B>:{1}""Stack Trace", ex.StackTrace)); 
                
    if (ex.InnerException != null
                { 
                    errorMessage.AppendLine(
    string.Format("<B>{0}</B>:{1}"" Inner Exception", ex.InnerException.Message)); 
                    errorMessage.AppendLine(
    string.Format("<B>{0}</B>:{1}""Inner Stack Trace", ex.InnerException.StackTrace)); 
                } 
                mailMessage.Body 
    = errorMessage.ToString(); 
                System.Net.NetworkCredential networkCredentials 
    = new 
                System.Net.NetworkCredential(
    "youraccount@gmail.com""password"); 
                
                SmtpClient smtpClient 
    = new SmtpClient(); 
                smtpClient.EnableSsl 
    = true
                smtpClient.UseDefaultCredentials 
    = false
                smtpClient.Credentials 
    = networkCredentials; 
                smtpClient.Host 
    = "smtp.gmail.com"
                smtpClient.Port 
    = 587
                smtpClient.Send(mailMessage); 
                
            } 
        } 

    使用: 
    using System; 
    namespace Experiement 

        
    public partial class WebForm1 : System.Web.UI.Page 
        { 
            
    protected void Page_Load(object sender,System.EventArgs e) 
            { 
                
    try 
                { 
                    
    throw new Exception("My custom Exception"); 
                } 
                
    catch (Exception ex) 
                { 
                    ex.SendErrorEmail(); 
                    Response.Write(ex.Message); 
                } 
            } 
        } 
    }

  • 相关阅读:
    数组的完全随机排列算法
    css超出2行部分省略号...
    前端面试题精华总结
    在地址栏输入网址后页面是如何呈现的?
    document.write和innerHTML的区别
    js运算符单竖杠“|”与“||”的用法和作用介绍
    border:none与border:0的区别
    如何实现浏览器内多个标签页之间的通信?
    js 关键字 in 的使用方法
    msyql: navicat 连接时msyql遇到的问题
  • 原文地址:https://www.cnblogs.com/lizhao/p/1990423.html
Copyright © 2011-2022 走看看