Witam.
Dopiero co zacząłem "bawić się" połączeniami z DB i natknąłem się na taki problemik.
Tworzę połączenie i obiekt:
SqlCommand cmd_GeoPol = new SqlCommand(sql, conn);
DbDataReader rdr_GeoPol;
następnie
rdr_GeoPol = cmd_GeoPol.ExecuteReader(CommandBehavior.CloseConnection);
i później mam pętlę wewnątrz której chciałbym kolejne zapytanie
flaga = false;
while (rdr_GeoPol.Read())
{
if (flaga)
{
}
else
{
string sprUpr = "SELECT Grant_app, ID_app FROM app_users WHERE ID_app = '" + rdr_GeoPol["ID_app"] + "'";
SqlCommand comm_sprUpr = new SqlCommand(sprUpr, conn);
DbDataReader rdr_sprUpr;
rdr_sprUpr = comm_sprUpr.ExecuteReader(CommandBehavior.CloseConnection); // <--- tu jest blad
rdr_sprUpr.Read();
Grant_app = Convert.ToBoolean(rdr_sprUpr["Grant_app"]);
rdr_sprUpr.Close();
if (Grant_app)
{
flaga = true;
wybranePole = Convert.ToString(rdr_GeoPol["variant"]);
}
}
w tym miejscu które zaznaczyłem pojawia się komunikat, że nie mogę otworzyć kolejnego DataReader'a ponieważ nie zamknąłem tego pierwszego.
Będę bardzo wdzięczny za wskazówki