一个查询的怪异问题,connection关闭后还可以用Adapter填充吗?
public   String   executeScalar(String   sqlStr) 
 		{ 
 			SqlCommand   cmd=new   SqlCommand(sqlStr,myCon); 
 			cmd.CommandType=CommandType.Text; 
 			return   cmd.ExecuteScalar().ToString(); 
 		} 
 		public   DataSet   execute(String   sqlStr,int   pageSize,int   pageIndex,String   col) 
 		{ 
 			SqlDataAdapter   da; 
 			DataSet   dataSet=new   DataSet();  			 
 			String   countSqlStr=sqlStr; 
 			da=new   SqlDataAdapter(getSqlPage(sqlStr,pageSize,pageIndex,col),myCon); 
 			da.Fill(dataSet);   
 			return   dataSet; 
 		} 
 		public   bool   close() 
 		{ 
 			try 
 			{ 
 				myCon.Close(); 
 				return   true; 
 			} 
 			catch 
 			{ 
 				return   false; 
 			} 
 		} 
 		public   bool   open(SqlConnection   con) 
 		{ 
 			try 
 			{ 
 				myCon=con; 
 				con.Open(); 
 				return   true; 
 			} 
 			catch 
 			{ 
 				return   false; 
 			} 
 		}   
 上面是几个相关的函数,先调用open函数传入一个已open的sqlcon对象,然后可调用executeScalar和execute进行查询,调用close后调用executeScalar函数提示连接已关闭,但调用execute仍然可以查询出数据库的任何数据!请问是不是我的函数有问题!   怪异!
------解决方案--------------------DataAdapter对象是不需要显式地建立连接的,直接使用连接字符串都可以。它会在需要时自动建立连接和断开连接的,你不用去管它。