C#反射typeof(string).GetMethod(“ Equals)netcoreapp2.2上的歧义匹配

时间:2019-04-26 15:20:36

标签: c# .net reflection .net-core

尝试获取

的methodInfo
string.Equals(string a, string b, StringComparison comparer)

使用以下方法:

var methodInfo = typeof(string).GetMethod("Equals", new[] { typeof(string), typeof(string), typeof(StringComparison) } );

在.netcoreapp2.2上运行时,我得到

System.Reflection.AmbiguousMatchException: Ambiguous match found.

看着重载,我找不到匹配相同签名的任何东西。

在针对4.6.1的项目中运行时,一切正常

问题: 如何在不引起歧义的情况下针对上述方法?

更新1:

实际用法:

    public static class StringMethodInfos
    {
        public static readonly MethodInfo EqualsMethod = typeof(string).GetMethod("Equals", new[] { typeof(string), typeof(string), typeof(StringComparison) } );

        public static readonly MethodInfo ContainsMethod = typeof(string).GetMethod("Contains");
    }
   var info = StringMethodInfos.EqualsMethod;

0 个答案:

没有答案