Beispiel #1
0
        public static IEnumerable <TResult> ExecuteDbCommand <TResult>(this Database database,
                                                                       DbCommand command,
                                                                       IResultSetMapper <TResult> mapper)
        {
            IEnumerable <TResult> list = null;

            using (IDataReader reader = database.ExecuteReader(command))
            {
                list = mapper.MapSet(reader);
                return(list);
            }
        }
Beispiel #2
0
        //public static IEnumerable<TResult> ExecuteSprocAccessor<TResult, TParam>(this Database database,
        //                                                                         string storedProcedureName,
        //                                                                         IParameterMapper parameterMapper,
        //                                                                         IRowMapper<TResult> rowMapper,
        //                                                                         params TParam[] parameterValues)
        //    where TResult : new()
        //    where TParam : KeyValueItem
        //{
        //  return database.CreateSprocAccessor(storedProcedureName, parameterMapper, rowMapper).Execute(parameterValues);
        //}

        public static IEnumerable <TResult> ExecuteSprocAccessor <TResult, TParam>(this Database database,
                                                                                   string storedProcedureName,
                                                                                   IResultSetMapper <TResult>
                                                                                   resultSetMapper,
                                                                                   params TParam[] parameterValues)
            where TResult : new()
            where TParam : KeyValueItem
        {
            var reader = database.ExecuteReader <TParam>(storedProcedureName, parameterValues);

            return(resultSetMapper.MapSet(reader));

            //return ExecuteSprocAccessor<TResult, TParam>(database, storedProcedureName,
            //                                             new KeyValueItemParameterMapper(database), resultSetMapper);
        }