public List <TEntity> ListGo() { using (var reader = StatementExecutor.ExecuteReader(Sql())) { return(EntityMapper.MapList <TEntity>(reader)); } }
public override IEnumerable <TEntity> Go() { using (var reader = StatementExecutor.ExecuteReader(Sql())) { return(EntityMapper.Map <TEntity>(reader)); } }
public TLEntity ListEntityGo <TLEntity>() where TLEntity : List <TEntity>, new() { using (var reader = StatementExecutor.ExecuteReader(Sql())) { return(EntityMapper.MapEntityList <TLEntity, TEntity>(reader)); } }
public override IEnumerable <TEntity> Go() { if (string.IsNullOrWhiteSpace(Sql)) { throw new MissingSqlException(); } using (IDataReader reader = StatementExecutor.ExecuteReader(Sql)) return(entityMapper.Map <TEntity>(reader)); }
public IEnumerable <TEntity> Union(List <UnionSql> Sqls) { if (Sqls.Count() == 0) { return(Go()); } using (IDataReader reader = StatementExecutor.ExecuteReader(UnionSql(Sqls))) return(EntityMapper.Map <TEntity>(reader)); }
public override TEntity Go() { if (paramWithMode) { throw new InvalidOperationException("For cannot be used ParamWith have been used, please create a new command."); } if (IsAutoIncrement) { using (IDataReader reader = StatementExecutor.ExecuteReader(Sql())) return(EntityMapper.Map <TEntity>(reader).FirstOrDefault()); } StatementExecutor.ExecuteNonQuery(Sql()); return(entity); }
public override int GetPageCount() { FinalizeColumnSpecifications(); FinalizeJoinConditions(); FinalizeWhereConditions(Specification.Filters); FinalizeGroupings(); FinalizeOrderings(); FinalizeHavings(); using (var dataReader = StatementExecutor.ExecuteReader(Specification.GetCountSqlString())) { var num = 0; if (dataReader.Read()) { num = dataReader.GetInt32(0); } return(num); } }
public void ExecuteQueryUsingProvidedConnection() { var statementExecutor = new StatementExecutor(this.logger, this.target); const string Sql = "SELECT * FROM Test"; var rowsCount = 0; using (var reader = statementExecutor.ExecuteReader(Sql)) { while (reader.Read()) { rowsCount++; } } rowsCount.Should() .Be(4); }