Есть ли способ отменить выполнение запроса и закрыть базу данных на С#?C#

Место общения программистов C#
Ответить
Anonymous
 Есть ли способ отменить выполнение запроса и закрыть базу данных на С#?

Сообщение Anonymous »

Я создаю приложение asp.net, которое выполняет измерение запросов к базе данных. На моей веб-странице есть две кнопки «Пуск» и «Стоп». Функция кнопки «Пуск» подключается к базе данных PostgreSQL, затем выполняет 100 запросов и затем закрывает соединение:

Код: Выделить всё

Connect();
NpgsqlCommand cmd = new NpgsqlCommand();
cmd.Connection = Connection;
for (int i = 0; i < 100; i++)
{
cmd.CommandText = queries[i];
cmd.ExecuteReader().Close();
}
Close();
Эта функция обычно занимает 7 секунд.
Когда я нажимаю кнопку остановки во время выполнения функции, функцией которой является Connection.Close(), я получаю сообщение об ошибке выполняет запрос, поэтому соединение не может быть закрыто. Есть ли способ отменить выполнение запроса, а затем закрыть соединение, пока есть цикл выполнения?
Я пытался как-то отменить запрос по его pid, но не получилось (вероятно, плохая реализация) потому что запрос с этим pid уже выполнен)

Подробнее здесь: https://stackoverflow.com/questions/759 ... abase-in-c
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»