您的位置:首页 > 编程语言 > ASP

ASP.NET页面错误处理及邮件发送简易方案

2009-01-05 11:10 477 查看
1包含页面:Default.aspx,Error.aspx

2.思路:Global.asax页面负责捕捉系统中除去try以外发生的页面错误。并将错信息发送给Error.aspx页面。Error.aspx页面负责显示错误信息,并将错误信息发送到指定邮箱。

3.具体代码:

Default.aspx页面

Code

html部分:

<body>

<form id="form1" runat="server">

<div style="background-color: #99CCFF; height: 252px;">

抱歉:发生了错误。

<div style="background-color:Silver"><asp:Label ID="Label1" runat="server"

Text="Label"></asp:Label></div>

</div>

</form>

</body>

cs部分:

添加命名空间:

using System.Net.Mail;

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

if (Request["error"] != null && Request["error"].Length > 0)

{

this.Label1.Text = Request["error"];

SendMail(Request["error"]);

}

}

}

public void SendMail(string body)

{

MailMessage myMail = new MailMessage();

myMail.From = new MailAddress("myaccount@test.com");

myMail.To.Add("test@test.com");

myMail.Subject = "Error";

myMail.Priority = MailPriority.Normal;

myMail.BodyEncoding = System.Text.Encoding.UTF8;

myMail.Body = body;

SmtpClient smtp = new SmtpClient();

smtp.Host = "mail";

try

{

smtp.Send(myMail);

}

catch (SmtpException ex)

{

this.Label1.Text = "邮件发送失败。\r\n"+ex.Message;

}

}

至此,系统即可实现错误捕捉显示,及邮件发生功能。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: