private IEnumerable <T> FindAll(Queries.ISqlQuery query) { if (this.factory == null) { throw new ArgumentNullException( "Using standard FindAll(), but factory is null!"); } this.queryDetails.RowCount = 0; using (DbDataReader rdr = this.GetDbDataReader(query)) { while (rdr.Read()) { T p = (T)this.factory.Create(rdr); if (this.Modifiers != null) { foreach (var d in this.Modifiers) { p = d(p); } } this.queryDetails.RowCount++; yield return(p); } } }
public DebugOutput(Queries.ISqlQuery query) { this.SqlQueries = (new List <Queries.ISqlQuery>() { query, }).ToArray(); }
public IEnumerable <TEntity> FindAll( Queries.ISqlQuery query, Factories.IFactory factory) { var entityList = new List <TEntity>(); using (DbCommand cmd = this.dbConnection.CreateCommand()) { cmd.CommandText = query.GetQueryString(); foreach (KeyValuePair <string, object> param in query.Parameters) { cmd.Parameters.Add( new SqlParameter(param.Key, param.Value)); } using (DbDataReader rdr = cmd.ExecuteReader()) { while (rdr.Read()) { TEntity p = (TEntity)factory.Create(rdr); entityList.Add(p); } } } return(entityList); }
public DbDataReader GetDbDataReader( Queries.ISqlQuery query) { using (DbCommand cmd = this.dbConnection.CreateCommand()) { cmd.CommandText = query.GetQueryString(); cmd.CommandTimeout = 600; foreach (Infrastructure.Parameter param in query.Parameters) { if (param.Value.GetType().Equals(typeof(int))) { Debug.WriteLine(string.Format( "Using special parameter type for {0}", param.Name)); SqlParameter p = new SqlParameter( "@" + param.Name, System.Data.SqlDbType.Int); p.Value = param.Value; cmd.Parameters.Add(p); } else { Debug.WriteLine(string.Format( "Using default parameter type for {0}", param.Name)); cmd.Parameters.Add( new SqlParameter("@" + param.Name, param.Value)); } } string debugString = ""; foreach (DbParameter param in cmd.Parameters) { debugString = string.Format( "DECLARE {0} {1} = {2}", param.ParameterName, "INT", param.Value); Debug.WriteLine(debugString); logger.Debug(debugString); } logger.Debug(cmd.CommandText.Replace("\n", " ").Replace("\r", "")); Debug.WriteLine(cmd.CommandText); DateTime startTime = DateTime.Now; DbDataReader retval = cmd.ExecuteReader(); DateTime endTime = DateTime.Now; TimeSpan elapsed = (endTime - startTime); debugString = string.Format( "Time elapsed on query: {0}.{1}s", elapsed.Seconds, elapsed.Milliseconds); this.queryDetails.QueryTimeMilliseconds = elapsed.TotalMilliseconds; Debug.WriteLine(debugString); logger.Debug(debugString); return(retval); } }
FindAll(Queries.ISqlQuery query, bool noParents = false) { List <Models.Area> entityList = new List <Models.Area>(); Factories.AreaFactory areaFactory = new Factories.AreaFactory(); using (DbDataReader rdr = this.GetDbDataReader(query)) { while (rdr.Read()) { Models.Area area = (Models.Area)areaFactory.Create(rdr); if (!noParents) { this.AddParents(area, rdr); } yield return(area); } } }
public abstract TEntity First(Queries.ISqlQuery query);
public abstract TEntity Single(Queries.ISqlQuery query);
public override Models.Marking Single(Queries.ISqlQuery query) { return(this.FindAll(query, new Factories.MarkingFactory()).Single()); }
public override IEnumerable <Models.BuildingConservation> FindAll(Queries.ISqlQuery query) { return(this.FindAll(query, new Factories.BuildingConservationFactory())); }
public override IEnumerable <Models.PlanSummary> FindAll(Queries.ISqlQuery query) { return(this.FindAll(query, new Factories.PlanSummaryFactory())); }
public override Models.AreaReservation Single(Queries.ISqlQuery query) { return(this.FindAll(query).Single()); }
public override Models.UndergroundArea First(Queries.ISqlQuery query) { return(this.FindAll(query, new Factories.UndergroundAreaFactory()).First()); }
public override IEnumerable <Models.UndergroundArea> FindAll(Queries.ISqlQuery query) { return(this.FindAll(query, new Factories.UndergroundAreaFactory())); }
public override Models.PlanBrief Single(Queries.ISqlQuery query) { return(this.FindAll(query, new Factories.PlanBriefFactory()).Single()); }
public override Models.Person First(Queries.ISqlQuery query) { return(this.FindAll(query).First()); }
public override Models.Person Single(Queries.ISqlQuery query) { return(this.FindAll(query).Single()); }
public override Models.Region First(Queries.ISqlQuery query) { return(this.FindAll(query, new Factories.RegionFactory()).First()); }
public override Models.AreaReservation First(Queries.ISqlQuery query) { return(this.FindAll(query).First()); }
public override Models.PlanSummary First(Queries.ISqlQuery query) { return(this.FindAll(query, new Factories.PlanSummaryFactory()).First()); }
public abstract IEnumerable <TEntity> FindAll(Queries.ISqlQuery query);
public override Models.BuildingConservation First(Queries.ISqlQuery query) { return(this.FindAll(query, new Factories.BuildingConservationFactory()).First()); }
public override IEnumerable <Models.Marking> FindAll(Queries.ISqlQuery query) { return(this.FindAll(query, new Factories.MarkingFactory())); }