public override List <T> RetrieveAll <T>()
        {
            var lstContact = new List <T>();
            var lstResult  = dao.ExecuteQueryProcedure(mapper.GetRetrieveAllStatement());
            var dic        = new Dictionary <string, object>();

            if (lstResult.Count > 0)
            {
                var objs = mapper.BuildObjects(lstResult);
                foreach (var c in objs)
                {
                    lstContact.Add((T)Convert.ChangeType(c, typeof(T)));
                }
            }

            return(lstContact);
        }