Utilizo Type.GetMethods(BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic)
para recuperar una matriz de métodos para un tipo determinado.Filtrando los métodos autogenerados (getter/setter/add/remove/.etc) devuelto por Type.GetMethods()
El problema es que el MethodInfo
devuelto podría incluir métodos que son generados por el compilador que no quiero. Por ejemplo:
propiedad
bool Enabled { get; }
se obtenerbool get_Enabled()
caso
SomethingChanged
conseguiráadd_SomethingChanged(EventHandler)
yremove_SomethingChanged(EventHandler)
es probable que pueda añadir un poco de lógica del filtro para deshacerse de ellos que potencialmente podría ser muy complicado. Deseo saber si hay algo más que pueda hacer, como con las configuraciones BindingFlags
, para recuperar solo los métodos definidos por el usuario.
posible duplicado de [Encontrar el PropertyInfo de alojamiento de la MethodInfo de captador/definidor] (http://stackoverflow.com/questions/520138/finding-the-hosting-propertyinfo-from-the- methodinfo-of-getter-setter) –