Я использую VSTS 2008 + ADO.Net + C# + .Net 3.5 + SQL Server 2008. Я использую ADO.Net на стороне клиента для подключения к серверу базы данных для выполнения процедуры хранения, а затем возврата результат из процедуры магазина.Настройка таймаута для SQL Server
Вот мой код. У меня есть два вопроса о тайм-аут,
Если я явно не устанавливать какие-либо параметры времени ожидания, связанные, для подключения к серверу баз данных, есть какие-либо параметры тайм-аута (например, если не удается подключиться к серверу базы данных для некоторого количества по умолчанию времени, будет какое-то исключение тайм-аута?)?
Если я не устанавливаю явные настройки тайм-аута для выполнения процедуры хранилища, существуют ли какие-либо настройки таймаута (например, если невозможно получить результаты от сервера к клиенту ADO.Net за некоторое время по умолчанию, будет какое-то исключение тайм-аута?)?
using (SqlConnection currentConnection = new SqlConnection("Data Source=.;Initial Catalog=TestDB;Trusted_Connection=true;Asynchronous Processing=true")) { // check current batch conut currentConnection.Open(); using (SqlCommand RetrieveOrderCommand = new SqlCommand()) { RetrieveOrderCommand.Connection = currentConnection; RetrieveOrderCommand.CommandType = CommandType.StoredProcedure; RetrieveOrderCommand.CommandText = "prc_GetOrders"; RetrieveBatchCountCommand.Parameters.Add("@Count", SqlDbType.Int).Direction = ParameterDirection.Output; RetrieveBatchCountCommand.ExecuteNonQuery(); int rowCount = Convert.ToInt32(RetrieveOrderCommand.Parameters["@Count"].Value); } }
Th anks gbn!Какие виды исключений будут выбрасываться или, другими словами, какие исключения мы должны поймать в нашем коде для обработки тайм-аута? – George2
В SSMS я получаю «Истекло время ожидания». Период ожидания истекает до завершения операции или сервер не отвечает ». Вы можете протестировать с помощью WAITFOR DELAY '00: 00: 40 'для принудительного 40-секундного ожидания и исключения для таймаута команды. Для таймаута соединения вы можете составить имя сервера и попытаться подключиться. – gbn
Спасибо, за тайм-аут команды, какие исключения следует поймать? – George2