Beispiel #1
0
        private ExecuteSQLX(int timeout, string[] outputNames, string[] columnNames, string sqlToExecute, string[] sqlIdentifiers, object[] sqlValues)
        {
            if (outputNames.Length != columnNames.Length)
            {
                throw new Exception("The output name count must match the column name count.");
            }

            this.timeout     = timeout;
            this.outputNames = outputNames;
            this.columnNames = columnNames;
            this.sql         = SqlStringHandler.GetParameterizedSql(sqlToExecute, sqlIdentifiers);
            this.sqlValues   = sqlValues;
        }
Beispiel #2
0
        private DataView ExecuteSQL()
        {
            string[] expressionNames  = this.sqlStringHandler.ExpressionTexts.Select(et => SqlStringHandler.CreateSqlExpression(et)).ToArray();
            string[] expressionValues = this.sqlStringHandler.ExpressionTexts.Select(et => SQLParameters.First(sp => sp.Name == et).Value).ToArray();

            string parameterizedSql = SqlStringHandler.GetParameterizedSql(this.sqlStringHandler.SqlString, expressionNames);

            using (var adapter = GetAdapter(this.connectionType, this.connectionString, parameterizedSql, expressionValues))
            {
                DataTable dataTable = new DataTable();
                adapter.Fill(0, MaxTestResultCount + 1, dataTable);
                if ((MoreResults = dataTable.Rows.Count == MaxTestResultCount + 1))
                {
                    dataTable.Rows.RemoveAt(dataTable.Rows.Count - 1);
                }
                return(dataTable.DefaultView);
            }
        }