“/czechandspeakeWeb”应用程序中的服务器错误。
--------------------------------------------------------------------------------已有打开的与此命令相关联的 DataReader,必须首先将它关闭。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.InvalidOperationException: 已有打开的与此命令相关联的 DataReader,必须首先将它关闭。源错误: 
行 70:         {
行 71:             SqlCommand cmd = new SqlCommand(safeSql, Connection);
行 72:             SqlDataReader reader = cmd.ExecuteReader();
行 73:             return reader;
行 74:         }
 

解决方案 »

  1.   

    去掉方法前的StaticConnection不要定义成static
      

  2.   

    SqlDataReader 要先关闭,再执行ExecuteNonQuery操作
    using (SqlConnection cn = new SqlConnection(“”))
      {
      SqlCommand cmd1 = new SqlCommand("", cn);
      cn.Open();
      using (SqlDataReader dr1 = cmd1.ExecuteReader())
      {
      while (dr1.Read())
      {
      string sql= "";
      SqlConnection conn2 = new SqlConnection("");
      SqlCommand cmd2 = new SqlCommand(sql, conn2 );
      cmd2.ExecuteNonQuery();
      }
      }  }
      

  3.   

    if connection  Transaction state , first close sqldataread