注册 | 登录 忘记密码? 51cto首页 | 博客 | 论坛 | 招聘
热点文章 获取当前页面路径,实现权..
 帮助

ASP.NET基础教程-SqlConnection对象-使用连接事件


版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://chenxing.blog.51cto.com/240526/45004
一、StateChange连接状态事件
StateChange事件在连接状态改变时触发,可以用StateChange事件监视Connection对象状态的改变。处理事件的方法称为事件处理器。这个方法在触发特定事件时调用。所以事件处理器方法都返回void并接受两个参数,一个是System.Object类的对象,表示引起事件的对象(System.Object类是所有类的基础类,换句话说,所有类最终都是从System.Object类派生的)。另一个参数是从System.EventArgs类派生的类对象。EventArgs类是事件的基础类,并表示这个事件的细节。对于StateChange事件,第二个对象是StateChangeEventArgs类对象。
 
1、下例定义StateChangeHandler方法以处理StateChange事件。注意这个方法的第二个参数是个StateChangeEventArgs对象。可以用这个对象的OriginalState属性取得连接的最初状态,用CurrentState属性取得连接的当前状态。
 
方法代码如下:
public static void StateChangeHandler(object sender,StateChangeEventArgs Event)
{
Response.Write(“con State has changed from“+”<br>”+Event.OriginalState+”<br>”+Event.CurrentState);
}
 
2、要监视事件,就要向这个事件注册事件处理器方法。
下面语句向SqlConnection对象的StateChange事件注册StateChangeHandler()方法
 
con.StateChange+=new StateChangeEventHandler(StateChangeHandler);
//StateChangeHandler为方法名称
二、InfoMessage数据库返回警告或信息消息事件
InfoMessage事件在数据库返回警告或信息消息时触发。可以用InfoMessage事件监视这些消息。要取得消息,可以从SqlInfoMessageEventArgs对象中读取Errors集合内容。可以用SQL Server PRINT或RAISERROR语句
产生信息与错误消息。
 
1、下例InfoMessageHandler()方法处理InfoMessage事件。注意这里用Errors集合显示消息,方法代码如下:
 
public static void InfoMessageHandler(object sender,SqlInfoMessageEventArgs Event)
{
Response.Write(“the following message was produced:\n”+Event.Errors[0]);
}
2、要监视事件,就要向这个事件注册事件处理器方法。
 
下面语句向SqlConnection对象的StateChange事件注册StateChangeHandler()方法
 
con.InfoMessage+=new SqlInfoMessageEventHandler(InfoMessageHandler);
// InfoMessageHandler为方法名称
SQL Server PRINT或RAISERROR语句在数据库中的用法:
PRINT ‘This is the message from the PRINT statement’
RAISERROR(‘This is the message from the RAISERROR statement’,10,1)
PRINT与RAISERROR语句的详细使用方法参考Transact-SQL




    文章评论
 
 

发表评论

昵   称:
验证码:  点击图片可刷新验证码  博客过2级,无需填写验证码
内   容: