将泛型方法与带反射的XMLDoc输出匹配

本文关键字:输出 XMLDoc 反射的 泛型方法 | 更新日期: 2023-09-27 18:22:15

我基本上是在尝试将库中的反射成员与与其一起输出的XMLDoc进行匹配

当遇到泛型类型时,我会遇到一些小麻烦。因此,以这个类为例:

public class GenericClass<T, U> {
    public void DoSomething<V>(U u, V v, string s) { ... }
}

DoSomething的XMLDoc成员名称如下所示:

Namespace.GenericClass.DSomething``1(`1,`0,System.String)

我发现它生成了那个字符串,但是能够在文档XML中找到它。基本上,XMLDoc是这样工作的:`1表示类的第二个泛型类型参数(例如U),`0表示方法的第一个泛型类型参数(例如V)。

但是,如何使用反射和MethodInfo/ParameterInfo将其进行匹配,以便在XMLDoc中找到正确的条目呢?

将泛型方法与带反射的XMLDoc输出匹配

最后,我通过将每个ParameterInfoType与方法及其声明类型中的泛型类型参数列表进行匹配来实现这一点。