tengo este tipo que contiene dos sobrecargas de un método genérico. Me gusta para recuperar una de las sobrecargas (con el parámetro Func<T>
) que utilizan la reflexión. El problema sin embargo es que no puedo encontrar el tipo de parámetro correcto para suministrar el método Type.GetMethod(string, Type[])
con.Recuperando el MethodInfo de de la sobrecarga correcta de un método genérico
Aquí es mi definición de clase:
public class Foo
{
public void Bar<T>(Func<T> f) { }
public void Bar<T>(Action<T> a) { }
}
Y esto es lo que he llegado con, lamentablemente sin éxito:
[TestMethod]
public void Test1()
{
Type parameterType = typeof(Func<>);
var method = typeof(Foo).GetMethod("Bar", new Type[] { parameterType });
Assert.IsNotNull(method); // Fails
}
¿Cómo puedo obtener el MethodInfo
de un método genérico de que conozco los parámetros?
Guau .. eso es genial.¡Funciona genial! Y tan poco código. – Anne