如何列出在运行时使用MakeGenericType创建的程序集或命名空间中的类型?

时间:2018-12-17 14:09:42

标签: c# .net reflection

请考虑以下两种类型:

GoogleCredential

如果我在运行时使用MakeGenericType创建类型:
以后如何查询该程序集或名称空间?

public abstract class Abase {
}

public class MyGeneric<T> : Abase {
}

.Net Fiddle

我尝试了一些方法,但似乎都没有效果。我想要的是可能的吗?

1 个答案:

答案 0 :(得分:1)

虽然打开通用类型和您创建的闭合通用类型的程序集是同一程序集,但是闭合类型不在.uniform(...)返回的列表中,因为该列表表示编译时已知的信息。

最好的办法是将您创建的类型存储在另一个列表中,并将其与Assembly.GetTypes()

串联。