public DbReaderExSource(DbReaderEx reader) { if (reader == null) { throw new ArgumentNullException("reader"); } _reader = reader; _source = new DataSetSource(_reader.ToDataSet()); }
public int GetTableIndex(string tableName) { int index = _source.GetTableIndex(tableName); if (index < 0) { string[] parts = tableName.Split(NAME_QUERY_SEPARATOR, 2, StringSplitOptions.None); string name, query; if (parts.Length > 1) { name = parts[0]; query = parts[1]; } else { name = tableName; query = tableName; } _reader.AddQuery(name, query); _source = new DataSetSource(_reader.ToDataSet()); index = _source.GetTableIndex(name); } return(index); }