Я поддерживаю приложение C # в VS 2010, которое я унаследовал, и застрял с проблемой тайм-аута.
Вызывается хранимая процедура, выполнение которой теперь занимает намного больше времени, и выдает следующую ошибку:
Не удалось получить данные записи: истекло время ожидания. Период ожидания истек до завершения операции или сервер не отвечает.
Используемый SqlDataSource
создается непосредственно в коде, и я не знаю, как установить свойство CommandTimeout
, так как оно кажется недоступным. Это правда? Если нет, то как я могу получить доступ к этому свойству?
Решения, которые я видел, имеют SqlDataSource
в файле .aspx
, и обычно CommandTimeout
устанавливается в событии управления (например: gridview). Это не тот случай.
EDIT:
Какой-то код
Results = new SqlDataSource();
Results.ConnectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["EM"].ConnectionString;
Results.SelectCommandType = SqlDataSourceCommandType.Text;
Results.SelectCommand = "exec sproc";
DataView ReturnedDataSet = (DataView)Results.Select(new
System.Web.UI.DataSourceSelectArguments());
Спасибо.