private int[] GetColumnOrdinals(NamedColumn[] namedColumns) { DbDataReader bufferReader = BufferReader ?? DataReader; if ((namedColumns == null) || (namedColumns.Length == 0)) { return(null); } var numArray = new int[namedColumns.Length]; var dictionary = new Dictionary <string, int>(StringComparer.OrdinalIgnoreCase); int ordinal = 0; int fieldCount = bufferReader.FieldCount; while (ordinal < fieldCount) { dictionary[SqlIdentifier.QuoteCompoundIdentifier(bufferReader.GetName(ordinal))] = ordinal; ordinal++; } int index = 0; int length = namedColumns.Length; while (index < length) { int num5; if (dictionary.TryGetValue(SqlIdentifier.QuoteCompoundIdentifier(namedColumns[index].Name), out num5)) { numArray[index] = num5; } else { if (namedColumns[index].IsRequired) { throw Error.RequiredColumnDoesNotExist(namedColumns[index].Name); } numArray[index] = -1; } index++; } return(numArray); }
// Methods internal SqlMultiplexer(Options options, IEnumerable <SqlParameter> parentParameters, SqlFactory sqlFactory, SqlIdentifier sqlIdentity) { this.sqlIdentity = sqlIdentity; this.visitor = new Visitor(options, parentParameters, sqlFactory, sqlIdentity); }
public SqlBuilder(ALinq.SqlClient.SqlIdentifier sqlIdentifier) { this.sqlIdentifier = sqlIdentifier; }
internal void SetIdentifier(SqlIdentifier sqlIdentifier) { visitor.SqlIdentifier = sqlIdentifier; }
public DatabaseSqlBuilder(SqlProvider sqlProvider) { SqlIdentifier = sqlProvider.SqlIdentifier; Mode = sqlProvider.Mode; TypeProvider = sqlProvider.TypeProvider; }
public SqlBuilder(SqlProvider sqlProvider) { this.sqlIdentifier = sqlProvider.SqlIdentifier; }
// Methods internal static SqlClientQuery Extract(SqlSubSelect subquery, IEnumerable <SqlParameter> parentParameters, SqlIdentifier sqlIdentity) { var query = new SqlClientQuery(subquery); if (parentParameters != null) { //query.Parameters.AddRange(parentParameters); foreach (var parameter in parentParameters) { query.Parameters.Add(parameter); } } var visitor = new Visitor(query.Arguments, query.Parameters, sqlIdentity); query.Query = (SqlSubSelect)visitor.Visit(subquery); return(query); }
// Methods internal Visitor(IList <SqlExpression> externals, IList <SqlParameter> parameters, SqlIdentifier sqlIdentity) : base(true) { this.externals = externals; this.parameters = parameters; this.sqlIdentity = sqlIdentity; }