Проблема заключается в том, что у меня есть хранимая процедура, которая выполняется последовательно на сервере Sql Server Management Server в течение 2 секунд, но при вызове той же самой хранимой процедуры из кода это время.Истекло время ожидания SQL за 2-секундный запрос
Когда он правильно запускается из SSMS, он должен возвращать около 30 строк.
Я пробовал несколько разных способов вызова процедуры из кода, но каждый раз с тем же результатом. Это только недавно началось, вчера он работал нормально.
Предпочтительный способ вызова процедуры для нас использует Linq2SQL, который дает следующее сообщение об ошибке:
Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
Source Error:
Line 16: public IMultipleResults GetTournamentRatingNonComplaintData([global::System.Data.Linq.Mapping.ParameterAttribute(DbType = "DateTime")] System.Nullable<System.DateTime> startdate, [global::System.Data.Linq.Mapping.ParameterAttribute(DbType = "DateTime")] System.Nullable<System.DateTime> enddate, [global::System.Data.Linq.Mapping.ParameterAttribute(DbType = "Int")] System.Nullable<int> officialSportID, [global::System.Data.Linq.Mapping.ParameterAttribute(DbType = "Char(1)")] System.Nullable<char> gender, [global::System.Data.Linq.Mapping.ParameterAttribute(DbType = "Int")] System.Nullable<int> level)
Line 17: {
Line 18: IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), startdate, enddate, officialSportID, gender, level);
Line 19: return ((IMultipleResults)(result.ReturnValue));
Line 20: }
Кто-нибудь знает, что различия между выполнением его в SSMS и через код? Что можно сделать для устранения этой проблемы?
Вы установили (или проверили) CommandTimeout в код, вызывающий SP? – 2010-12-15 16:08:36
Тайм-аут команды установлен на 15 секунд, после этого времени истекает время. Хотя запрос должен выполняться всего 2 секунды. – 2010-12-15 16:29:36