/// <summary>Create a list of <typeparamref name="T"/> entities from the <see cref="System.Data.Common.DbDataReader"/>.</summary>
        /// <param name="reader">The reader object.</param>
        /// <returns>Returns a list of <typeparamref name="T"/> objects.</returns>
        public static List <T> ToList <T>(this DbDataReader reader) where T : class, new()
        {
            List <T> results = new List <T>();

            if (!reader.HasRows)
            {
                return(results);
            }

            Dictionary <string, Delegate> typeConverter = ReaderTypeConverter.GetTypeConverter(typeof(T));// TypeConverters[typeof(TModel).FullName];

            do
            {
                T item = reader.ToPoco <T>();

                results.Add(item);
            } while (reader.Read());

            return(results);
        }