Cómo crear una Lista <tipo desconocido en tiempo de compilación> y copiar elementos a través de System.Reflection.PropertyInfo

Me he encontrado con algo bastante complejo. Estaría obligado si alguien puede ayudar.

1) Tengo que crear una Lista <> de tipo desconocido en el momento de la compilación. Eso ya lo he logrado.

 Type customList = typeof(List<>).MakeGenericType(tempType);
 object objectList = (List<object>)Activator.CreateInstance(customList);

"temptype" es el tipo personalizado que ya se ha obtenido.

2) Ahora tengoPropertyInfo object, que es esa lista desde la que tengo que copiar todos los elementos a la instancia que acabo de crear "objectList"

3) Luego necesito iterar y acceder a los elementos de "objectList" como si fuera un "System.Generic.List".

Cortando la historia larga, usando la reflexión, necesito extraer una propiedad que es una lista y tenerla como una instancia para su uso posterior. Sus sugerencias serán apreciadas Gracias por adelantado

Umair

Respuestas a la pregunta(3)

Su respuesta a la pregunta