Ошибка: истекло время ожидания.Время ожидания истекло до завершения операции или сервер не отвечает - PullRequest
2 голосов
/ 28 июля 2011

Я использую следующие среды: .NET (2.0) и SQL Server 2005.

Сценарий: в форме .NET пользователю предлагается ввести две переменные, которые будут предоставлены хранимой процедуре в SQL Server. Как только записи возвращены из хранимой процедуры, приложение .NET импортирует эти записи в файл .csv.

Хитрость в том, что хранимая процедура является динамической. Возвращенные записи не всегда являются одинаковыми столбцами или заполнены одной и той же временной таблицей. Приложение .NET работает, когда хранимая процедура выполняется менее чем за 30 секунд.

Я увеличил conn.CommandTimeout = 6000 в своем приложении и увеличил «соединение с удаленным запросом» в SQL Server до 6000, но он все еще не работает для переменных, работающих более 30 секунд.

Любые предложения приветствуются.

Спасибо Chaydee

1 Ответ

0 голосов
/ 28 июля 2011

Это может быть потому, что вы устанавливаете тайм-аут команды в соединении вместо самого объекта команды. Не вижу ваш код, но если вы используете DataReader, DataAdapter и т. Д., Попробуйте установить CommandTimeout для этих объектов. Несколько других возможностей:

  1. превышен тайм-аут соединения перед выполнением запроса. Маловероятно, но все же, какое время ожидания соединения? Это должно быть> = любой CommandTimeout.
  2. вызов CommandTimeout не выполняется.
  3. что-то еще позже переопределяет вызов CommandTimeout.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...