Je suis en train de plusieurs requêtes dans mon code comme ci-dessous, mais il émet une exception à la ligne MySqlDataReader rdr_get_latest_build_notes = get_latest_build_notes_cmd.ExecuteReader();
depuis que j'ai déjà un rdr ouvertComment exécuter plusieurs requêtes à l'aide MysqlDataReader
I googlé et trouvé @according to MSDN son pas pris en charge, je besoin de conseils sur la façon de le réparer?
public IEnumerable<BuildNotes_op> RetrieveBuildDetails(string BuildID)
{
....
var conn = new MySql.Data.MySqlClient.MySqlConnection();
conn.ConnectionString = AciDev.aciDevConnectionString;
try
{
Console.WriteLine("Connecting to MySQL...");
conn.Open();
string sql = @"query1";
MySqlCommand cmd = new MySqlCommand(sql, conn);
MySqlDataReader rdr = cmd.ExecuteReader(); --> **rdr open here**
....
while (rdr.Read())
{
.....
if (rdr[4] != DBNull.Value)
....................
else
........
string sql_get_latest_build_notes_cmd = "query2";
MySqlCommand get_latest_build_notes_cmd = new MySqlCommand(sql_get_latest_build_notes_cmd, conn);
MySqlDataReader rdr_get_latest_build_notes = get_latest_build_notes_cmd.ExecuteReader(); --> **throws exception here**
if (rdr_get_latest_build_notes.HasRows)
{
....................
}
rdr_get_latest_build_notes.Close();
if (BuildDetails != null)
{
BuildNotesDetails.Add(BuildDetails);
}
}
rdr.Close();
conn.Close();
return BuildNotesDetails;
}
catch
{
throw;
}
finally
{
conn.Close();
}
Exception:
There is already an open DataReader associated with this Connection which must be closed first.
Je pensais utiliser plusieurs connexions @ 'MySqlCommand get_latest_build_notes_cmd = new MySqlCommand (sql_get_latest_build_n otes_cmd, conn); ', avez-vous quelque chose d'autre à l'esprit? Si oui, veuillez préciser exactement –
@JeffShort qui utilise plusieurs commandes simultanément contre une seule connexion –
Avez-vous un exemple spécifique sur la façon d'initier plusieurs connexions?> –