如何找到签名为 IEnumerable<Func<ITab>>
的类型的具体类型?
我的构造函数采用上述类型以执行延迟加载。本质上,仅在需要时加载选项卡以减少启动时间。然而,每个具体Tab
实现由表示选项卡名称的属性修饰。当我遍历我的列表时,我想获取委托(delegate)的具体类型,以便获取属性值。
我知道 .GetType().GetMethod("Invoke").ReturnType
, 但返回 ITab
.我似乎只能通过调用 Invoke()
找到具体类型.
在访问与每个具体类型相关的信息时,是否有更好的方法可以使用委托(delegate)实现延迟加载?
最佳答案
为什么在实际调用返回它的方法之前需要知道 Tab 的类型?当它返回时,您可以只使用 GetType()
然后找到属性。如果您的某个函数可以返回 ITab
的不同实现怎么办?特别是如果正确的是从数据库或 xml 等外部来源中挑选出来的。需要调用该委托(delegate)。
关于c# - 获取委托(delegate)的具体返回类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14587806/