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

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

2007-10-04 12:42 330 查看


一、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

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: