/// <summary> /// Executes a query with the specified command text and <typeparamref name="dbParameterSetter"/>, mapping a single result row to a object via a <typeparamref name="rowMapperFunc"/>. /// <para> /// Don't 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="rowMapperFunc">CallBack function that maps a single result to a single object in a rowNum</param> /// <returns></returns> public static IList <T> QueryForList <T>(this AdoTemplate adoTemplate, CommandType cmdType, string cmdText, IDbParameterSetter dbParameterSetter, Func <IDataReader, int, T> rowMapperFunc) { var rowMapper = new IRowMapImplementor <T>(rowMapperFunc); return(adoTemplate.QueryForList(cmdType, cmdText, dbParameterSetter, rowMapper)); }
/// <summary> /// Executes a query with the specified command text, mapping a single result row to a object via a <typeparamref name="rowMapperFunc"/>. /// <para> /// Don't 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="rowMapperFunc">CallBack function that maps a single result to a single object in a rowNum</param> /// <returns></returns> public static IList <T> QueryForList <T>(this AdoTemplate adoTemplate, string cmdText, Func <IDataReader, int, T> rowMapperFunc) { var rowMapper = new IRowMapImplementor <T>(rowMapperFunc); return(adoTemplate.QueryForList(CommandType.Text, cmdText, null, rowMapper)); }