private List <TrackingMember> GetObjectMembers(object Obj)
        {
            var type   = Obj.GetType();
            var fields = new TrackingMembersList();

            _mapManager.GetMapperImpl(
                type,
                null,
                new MappingConfiguration()
                ).Map(Obj, null, fields);

            return(fields.TrackingMembers);
        }
        private static ObjectsMapperBaseImpl GetMapperImpl(
            string mappingKey,
            ObjectMapperManager mapperManager,
            IEnumerable <string> skipFields)
        {
            IMappingConfigurator config = new DbReaderMappingConfig(skipFields, mappingKey);

            if (mapperManager != null)
            {
                return(mapperManager.GetMapperImpl(
                           typeof(DbDataReader),
                           typeof(T),
                           config));
            }
            return(ObjectMapperManager.DefaultInstance.GetMapperImpl(
                       typeof(DbDataReader),
                       typeof(T),
                       config));
        }