/// <summary> /// Executes a query with the specified command text and <typeparamref name="dbParameterSetter"/>, mapping a set of result to a list of object via a <typeparamref name="setMapperFunc"/>. /// <para> /// Call <see cref="IDataReader.Read"/> to get next result. /// </para> /// </summary> /// <typeparam name="T"></typeparam> /// <param name="adoTemplate">The ado template</param> /// <param name="cmdType">Text or Stored Procedure</param> /// <param name="cmdText">The command text (Select)</param> /// <param name="dbParameterSetter">The parameter setter to bind to the query</param> /// <param name="setMapperFunc">CallBack function that maps a set of result to list of objects</param> /// <returns></returns> public static IList <T> QueryForList <T>(this AdoTemplate adoTemplate, CommandType cmdType, string cmdText, IDbParameterSetter dbParameterSetter, Func <IDataReader, IList <T> > setMapperFunc) { var rowMapper = new IResultSetImplementor <T>(setMapperFunc); return(adoTemplate.QueryForList(cmdType, cmdText, dbParameterSetter, rowMapper)); }
/// <summary> /// Executes a query with the specified command text,mapping a set of result to a list of object via a <typeparamref name="setMapperFunc"/>. /// <para> /// Call <see cref="IDataReader.Read"/> to get next result. /// </para> /// </summary> /// <typeparam name="T"></typeparam> /// <param name="adoTemplate">The ado template</param> /// <param name="cmdText">The command text (Select)</param> /// <param name="setMapperFunc">CallBack function that maps a set of result to list of objects</param> /// <returns></returns> public static IList <T> QueryForList <T>(this AdoTemplate adoTemplate, string cmdText, Func <IDataReader, IList <T> > setMapperFunc) { var rowMapper = new IResultSetImplementor <T>(setMapperFunc); return(adoTemplate.QueryForList(CommandType.Text, cmdText, null, rowMapper)); }