¿Cómo obtener MethodInfo de métodos protegidos y públicos solamente?Getting MethodInfo de métodos protegidos y públicos solamente?
Por favor, asesorar.
¿Cómo obtener MethodInfo de métodos protegidos y públicos solamente?Getting MethodInfo de métodos protegidos y públicos solamente?
Por favor, asesorar.
No hay manera directa. Lo que puede hacer es comprobar IsFamily
y IsPublic
bandera de MethodInfo
:
minfo = b.GetType().GetMethod("publicProtectedMember",
BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public);
if (minfo.IsFamily || minfo.IsPublic)
{
string s = fd.Member();
}
Bueno, ¿no puede obtener todos MemberInfo
s y filtrarlos por IsFamily
y IsPublic
propiedades?
Esta respuesta es mucho mejor en comparación con los otros en mi opinión. – Andry
using System.Linq;
using System.Reflection;
var methods = foo
.GetType()
.GetMethods(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic)
.Where(m => m.IsFamily || m.IsPublic);
'GetMethods' no solo' GetMethod' supongo – abatishchev