您的位置:首页 > 其它

已有打开的与此命令相关联的 DataReader,必须首先将它关闭

2008-03-27 15:12 459 查看
System.InvalidOperationException: 已有打开的与此命令相关联的 DataReader,必须首先将它关闭。 在 System.Data.SqlClient.SqlInternalConnectionTds.ValidateConnectionForExecute(SqlCommand command) 在 System.Data.SqlClient.SqlConnection.ValidateConnectionForExecute(String method, SqlCommand command) 在 System.Data.SqlClient.SqlCommand.ValidateCommand(String method, Boolean async) 在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) 在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) 在 System.Data.SqlClient.SqlCommand.ExecuteScalar() 在 _Default.TreeViewBind() 位置 c:\treeview\Default.aspx.cs:行号 40

错误如上:

已有打开的与此命令相关联的 DataReader,必须首先将它关闭

同时打开建立两个DataReader,而采用同一个SqlConnection;

解决方法: 两个DataReader用不同的SqlConnection;

注意: DataReader依托于SqlConnection,如果SqlConnection关闭了,DataReader也就自动消亡了

另外DataReader在使用时不能关闭SqlConnection

.TreeView1_0 { text-decoration:none; }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐