wenn Sie setzen mehrere sql-Befehle zeigt Fehler :Es ist bereits ein geöffneter DataReader zugeordnet diesen Befehl, der zuerst geschlossen werden

Freunde, wenn ich Schreibe diesen code in asp.net ich erhalte eine Fehlermeldung wie diese:

Es ist bereits ein geöffneter DataReader zugeordnet diesen Befehl, die
muss zuerst geschlossen werden

mir bitte helfen

SqlConnection con = obj.getcon();
con.Open();

       SqlCommand cmd = new SqlCommand("select student_id from student_details", con);
       SqlDataReader dr = cmd.ExecuteReader();
       while (dr.Read())
       {
           String ss=dr[0].ToString();
           if (val == ss)
           {



               SqlCommand cmd1 = new SqlCommand("insert student_vs_testsession_details(student_id,testsession_id,testsession_status) values('" + val + "','" + Test + "','')", con);
               int val1 = cmd1.ExecuteNonQuery();


           }
           else
           {


               string message = "<script language=JavaScript> alert('StudentID does not exists!'); </script>";
               if (!Page.IsStartupScriptRegistered("clientScript"))
               {
                   Page.RegisterStartupScript("clientScript", message);
               }
           }

       } 
     dr.Close();
      //con.Close();

    }
Do NICHT inline-Parameter in SQL Statements! Es ist der Schnellste Weg, Probleme zu haben, mit-Injektion-Attacken (Nein, die Flucht der Eingang ist nicht ausreichend) - werfen Sie einen Blick auf, wie der Verwendung von parametrisierten Abfragen.
danke.. aber nach eingestellt ich habe den gleichen Fehler

InformationsquelleAutor nsds | 2013-04-08

Schreibe einen Kommentar