c# - 不区分大小写的 GetMethod?

标签 c# reflection

foreach(var filter in filters)
{
    var filterType = typeof(Filters);
    var method = filterType.GetMethod(filter);
    if (method != null) value = (string)method.Invoke(null, new[] { value });
}

获取方法有没有不区分大小写的方法?

最佳答案

是的,使用 BindingFlags.IgnoreCase:

var method = filterType.GetMethod(filter, 
    BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance);

当心可能的歧义,你会得到一个 AmbiguousMatchException。

关于c# - 不区分大小写的 GetMethod?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4010003/

相关文章:

java - JVM如何存储类的元信息?

c# - 当前 JsonReader 项不是对象

c# - 使用 C# 获取硬盘速度

c# - 使用继承自 List<T> 的类进行 JSON 序列化

c# - 如何使用反射确定基类的泛型参数

java - 无法运行依赖项 main 函数

c# - 我的 C# 应用程序如何测试用户是否具有 "Read"网络共享访问权限?

c# - asp.net 的动画图表控件

c# - 如何从 MethodInfo 创建 Action<Tᴺ> 或 Func<Tᴺ, out TResult>

java - 使用 Scala 反射返回类型化函数