c# - 如何使用反射在静态类中查找私有(private)静态方法?

标签 c# methods reflection static

我有一个静态类,我想使用 typeof(MyStaticClass).GetMethods() 找到它的私有(private)静态方法,但它总是只显示公共(public)方法。

我怎样才能实现这个目标?

最佳答案

使用包含 BindingFlags 参数的 GetMethods 重载:

var methods = typeof(MyStaticClass)
    .GetMethods(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static);

(我没有包含 BindingFlags.Instance 因为您已明确表示它是一个静态类;要查找任何类中的所有方法,也请包含它。)

关于c# - 如何使用反射在静态类中查找私有(private)静态方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55646565/

相关文章:

c# - 对传递 Expression 与 Func 参数感到困惑

scala - 使用 Java 反射获取 Scala trait 中的私有(private)字段

c# - 转换为具有动态类型参数的通用接口(interface)

java - 用 Java 编程数组

java - 非常简单的Java语法错误

java - 使用泛型动态实例化类型

c# - MySQL Entity Framework 错误 - 在配置中找不到指定的存储提供程序,或者无效

C# 自定义 ListView

c# - Json.NET,无法反序列化可为空的类型

python - 在 Python 中从父类调用方法