Приветствую.
Есть задача: отправить 1 запрос типа SELECT, а затем на основе его данных отправить еще 1 запрос типа SELECT не закрывая чтение первого запроса.
Сам вопрос: как это сделать правильно?
Есть вариант - 1 запрос = 1 подключение к базе и разрыв подключения после получения ответа, но при этом есть сложность: остается открытое соединение после прочтения ответа:
public static MySqlDataReader ExecuteReader(string sql)
{
var connection = new MySqlConnection(ConnectString);
var cmd = connection.CreateCommand();
connection.Open();
cmd.CommandText = sql;
return cmd.ExecuteReader();
}
Дальше я его насилую как мне нужно, естественно в using'e, но using вызывает Dispose только у MySqlCommand, а не у подключения, как мне вызвать dispose для команды и подключения правильно?