Estaba tratando de agregar elementos a IList a través de la reflexión, pero al llamar al método "Agregar" se produjo un error "ref. Objeto no establecido". Mientras realizaba la depuración, supe que GetMethod ("Agregar") devolvía una referencia NULA.Agregar elementos a la lista <T> utilizando la reflexión
Type objTyp = typeof(MyObject); //HardCoded TypeName for demo purpose
var IListRef = typeof (List<>);
Type[] IListParam = {objTyp};
object Result = IListRef.MakeGenericType(IListParam);
MyObject objTemp = new MyObject();
Result.GetType().GetMethod("Add").Invoke(Result, new[] {objTemp });
Por favor ayuda.
He trabajado bastante con la reflexión hace un tiempo, y llegué a la conclusión de que no me gusta la sobrecarga de 'GetMethod (cadena)', porque nunca supe si volvería. Intente utilizar 'GetMethod (string, Type [])' o 'GetMethod (string, BindingFlags)'. Puede que no funcione, y podría ser solo paranoico, pero recuerdo haber tenido mucha confusión sobre problemas similares antes. – Alxandr