【发布时间】:2017-03-03 09:22:27
【问题描述】:
要获取特定 .NET 程序集和给定命名空间中定义的类的列表,我会执行以下操作:
foreach (var type in assembly.GetTypes()
.Where(t => t.IsClass && t.Namespace == @namespace))
{
//process type
}
这会返回类和委托,所以如果有像这样的委托声明
public delegate void MyDelegate()
MyDelegate也被上述循环处理。
我只想循环访问委托类型。
我希望 Type 类有类似 IsDelegate 的属性,但没有。
我看到代表代表的类型具有基本类型System.MulticastDelegate - 它是正确的过滤器还是我遗漏了什么?
【问题讨论】:
-
检查类型是否可分配给
Delegate(或MulticastDelegate,在现实世界中没有区别)
标签: .net delegates .net-assembly