项目开发经验-ASP.NET项目开发中的异常处理
源贴地址:http://www.cnblogs.com/yanyangtian/archive/2009/05/07/1451705.html
前言:异常的处理在项目开发中是很有必要的,异常的处理不仅仅只是try..catch..finally就完事了的。异常处理绝对可以称开发中的重要组成部分。必须正确的面对异常,因为即使是最能干的开发人员,也要面对这个问题 ....
我们不知道客户是怎么样使用我们开发的软件的,所以我们必须处理这样的情况:如果系统不按照我们的设计时所想的运行,我们改怎么办?
下面我们就来具体的介绍在ASP.NET项目开发中的异常的处理方式,希望看完后,大家可以回答上面的问题。
本篇的话题如下:
应用程序级别异常处理的错误处理
页面级别异常处理
方法级别异常处理
web.config文件异常处理配置
健康监视(Health Monitoring)
Enterprise Application Blocks异常处理模块
一.在应用程序级别的异常处理:
相信大家对Application对象不陌生,而且在项目中添加过Global.asax文件。确实,ASP.NET在应用程序级别处理异常的代码都是放在Global.asax的Application_Error事件处理下的:
void Application_Error(object sender, EventArgs e)
{
// Code that runs when an unhandled error occurs
}
我们可以在上面的事件处理的方法中捕获所有的异常,而且还可以把异常记录到日志文件,并且同时发送Email告诉开发人员出现了什么问题,如下
Code
Exception error = Server.GetLastError().GetBaseException();
//在事件日志中记录异常
if (!EventLog.SourceExists("ApplicationException"))
相关文档:
配置文件可用来存放一些多次用到的常量数据,如连接串:
<appSettings>
<add key="connStr1" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="/>
<add key="connStr2" value="App_Data\test.mdb"/>
</appSettings>
这个配置数据库连接串
使用示例:
public class DBCo ......
执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: 用户 'XXXASPNET' 登录失败。
今天将网站迁移过来后,就发现这个问题.经过摸索,发现原因是我们登录数据库的角色对数据库的权限不够. ......
下载页面:
<a href="download.ashx?url=<%=Server.UrlEncode("说明.txt")%>">下载</a>
------------------------------------------------------------------------------
download.ashx
<%@ WebHandler Language="C#" Class="download" %>
using System;
using System.Web;
public ......
客户端传送数据到服务器端有三种方法:
1.form
2.querystring
3.cookie
利用这些方式取得的数据在服务器端都是字典集合,如果要精确取到某个集合的值,则直接使用对应的集合的名称,三种方式对应的集合如下:
1.form:request.form
2.querystring:request.querystring
3.cookie:request.cookie
利用request.p ......
方法一:
新建一个页面然后在页面拖一个GridView控件在属性框中设置GridView控件的AllowPaing属性为True 然后再设置GridView的PageSize属性,源文件如下:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames ="classId" CellPadding="5" OnRowDeleting="GridView1_RowDeleting" All ......