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
相关文章推荐
- ASP.NET基础教程-SqlConnection对象-方法和事件
- 使用SqlConnection对象连接SQL Server数据库
- sqlconnection, sqlcommand, sqltransaction,SqlParameter连接数据库的几个对象使用
- Delphi中COM自动化对象中使用事件
- 使用BOM通常可实现如下功能、window对象常用的属性、方法、事件
- 线程同步的三种方法(互斥,事件,临界区) 之一 使用临界区对象
- DevExpress ASP.NET 使用经验谈(3)-XPO对象的使用(使用指定数据连接)
- 使用事件对象实现线程间的同步
- 使用定时器解决对象事件中自释放的问题
- 今天开始学习ADO.NET中的Connection对象(一)--SqlConnection对象连接SQL Server
- [Unity&C#&委托事件&未实例化]使用委托事件的时候事件对象未实例化
- 使用OLEDB连接Oracle数据库无法获取对象属性的原因
- [ACE程序员教程笔记]使用ACE_Acceptor分离连接和事件处理
- 使用 ConnectionStringBuilder 对象创建精确连接字符串
- JS 及时监听事件 和 FormData 对象上传文件的使用
- Flex4 使用RemoteObject BlazeDS 连接JAVA对象获取数据
- 使用代码创建的控件对象,设置的事件监听方法不执行的问题
- Spring JDBC-使用Spring JDBC获取本地连接对象以及操作BLOB/CLOB类型数据
- ASP.NET基础教程-SqlCommand对象-存储过程的使用
- ASP.NET基础教程-SqlCommand对象-ExecuteScalar()方法的使用