Use Reflection para llamar al método genérico en la instancia del objeto con firma: SomeObject.SomeGenericInstanceMethod <T> (argumento T)
Como llamoSomeObject.SomeGenericInstanceMethod<T>(T arg)
?
Hay algunas publicaciones sobre cómo llamar a métodos genéricos, pero no como esta. El problema es que el parámetro del argumento del método está restringido al parámetro genérico.
Sé que si la firma fuera
SomeObject.SomeGenericInstanceMethod<T>(string arg)
entonces podría obtener el MethodInfo con
typeof (SomeObject).GetMethod("SomeGenericInstanceMethod", new Type[]{typeof (string)}).MakeGenericMethod(typeof(GenericParameter))
Entonces, ¿cómo hago para obtener el MethodInfo cuando los argumentos regulares son de tipo genérico? ¡Gracias!
Además, puede o no haber restricciones de tipo en el parámetro genérico.