public void BeginExecuteQuery() { ExecuteQueryDelegate del = new ExecuteQueryDelegate(this.DoQueryExec); //del.BeginInvoke(this._db, new AsyncCallback(this.BeginExecuteQueryCallback), del); del.BeginInvoke(this._connStr, this._qryStr, this._provType, new AsyncCallback(this.BeginExecuteQueryCallback), del); }
public void BeginExecuteQuery() { ExecuteQueryDelegate del = new ExecuteQueryDelegate(this.DoQueryExec); //del.BeginInvoke(this._db, new AsyncCallback(this.BeginExecuteQueryCallback), del); del.BeginInvoke(this._dbType, this._cnStr, this._qrStr, this._timeOut, new AsyncCallback(this.BeginExecuteQueryCallback), del); }
/// <summary> /// Функция запуска хранимых процедур или текстовых запросов. /// В процессе работы вызываются события QueryExecuteStartedEvent и QueryExecuteFinishedEvent /// </summary> /// <param name="CommandText">Текст команды или имя процедуры</param> /// <param name="CommandResultType">Тип возвращаемого результата</param> /// <param name="CommandType">Тип команды</param> /// <param name="ResultColumnName">Имя колонки с результатом</param> /// <param name="CommandTimeOut">Таймаут для команды (в секундах)</param> /// <returns>Структура с описанием результата</returns> public CommandResult ExecuteQuery(string CommandText, CommandResultTypes CommandResultType, CommandType CommandType, string ResultColumnName, int CommandTimeOut) { ExecuteQueryDelegate executeQueryDelegate = new ExecuteQueryDelegate(ExecuteQueryWork); /// Асинхронный запуск Запроса IAsyncResult ar = executeQueryDelegate.BeginInvoke( CommandText, CommandResultType, CommandType, ResultColumnName,CommandTimeOut, null, null); /// Событие: запрос начал исполнение if (QueryExecuteStartedEvent != null) { QueryExecuteStartedEvent(this, EventArgs.Empty); } /// Ожидание окончания CommandResult cr = executeQueryDelegate.EndInvoke(ar); /// Событие: запрос завершил выполнение if (QueryExecuteFinishedEvent != null) { QueryExecuteFinishedEvent(this, EventArgs.Empty); } return cr; }