У меня есть хранимая процедура, которая занимает около 10 секунд для запуска при вызове из SSMS и выполняется успешно. Процедура принимает параметр int
.Сохраненная процедура timeout вызвана из кода, выполняется нормально с SSMS
При вызове же хранимую процедуру из кода:
using (var connection = new SqlConnection(ConnectionStringName))
{
using (var cmd = new SqlCommand("ProcedureName", connection))
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter("@itemId", itemId));
cmd.CommandTimeout = 150;
connection.Open();
cmd.ExecuteNonQuery();
}
}
Ошибки я получаю следующее:
System.Data.SqlClient.SqlException (0x80131904): Timeout expired.
The timeout period elapsed prior to completion of the operation or the server is not responding. --->
System.ComponentModel.Win32Exception (0x80004005): The wait operation timed out
Передаваемый параметр действителен и при вызове хранимой процедуры из SSMS с то же самое значение параметра выполняется правильно.
Сколько времени требуется на выполнение SSMS? – rikitikitik
Около 10 секунд. –
@ shA.t Удалена эта строка, и я получаю то же исключение, только быстрее. –