У меня странная проблема. У меня есть приложение C#, которое делает несколько подключений к SQL (всего 7). Все отлично работало некоторое время, а затем внезапно, SQL разрывается на последнем соединении. Это довольно простое соединениеSQL-таймаут при последнем соединении
public static void APP()
{
using (SqlConnection conn7 = new SqlConnection(ConfigurationManager.ConnectionStrings["Connect"].ConnectionString))
{
conn7.Open();
SqlCommand cmd7 = new SqlCommand("sp_proc", conn7);
cmd7.CommandType = System.Data.CommandType.StoredProcedure;
cmd7.ExecuteNonQuery();
conn7.Close();
}
}
Эта строка подключения выглядит так.
add name="Connect" connectionString="Data Source=Server; Initial Catalog=DB; User ID=User; Password=password" providerName="System.Data.SqlClient"
Я использую для каждого из них, и я закрываю каждое соединение в конце каждого класса. Кто-нибудь видел что-то подобное? У меня слишком много соединений?
Я запускаю каждый класс в порядке от Main.
Как долго хранимая процедура займет выполнить? Таймаут по умолчанию - 30 секунд, но вы можете изменить его с помощью свойства 'cmd7.CommandTimeout'. (Вы также можете удалить его, установив его на '0'). – Siyual
Позвольте мне увеличить тайм-аут и выпустить его – maltman
Еще лучше - выполните процедуру непосредственно через SSMS или аналогичный инструмент и посмотрите, сколько времени потребуется для выполнения при нормальных обстоятельствах. Добавьте небольшой буфер для занятости и используйте его для вашего таймаута. – mason