反射、泛型、事件处理程序和委托问题



我正在与反射、泛型、事件处理程序和委托作斗争。我有一个类型是从AsyncCompletedEventArgs派生的。我想用这个类型创建一个通用的EventHandler实例,也是一个委托。之后,我想把这个事件处理程序添加到一个事件中。

谁能帮助我创建事件处理程序和委托使用反射?感谢所有的帮助。

// The type is derived from AsyncCompletedEventArgs
Type[] typeArgs = { soapServiceInfo.GetEntitiesCompletedEventArgsType };
var eventHandlerType = typeof(EventHandler<>);
var constructed = eventHandlerType.MakeGenericType(typeArgs);
// getEntitiesCompleted = (sender, arguments) => { }
// soapServiceInfo.GetEntitiesCompletedEventInfo.AddEventHandler(client, getEntitiesCompleted);

只能为编译时已知的类型创建lambda表达式。

你试图在运行时创建一个lambda表达式;为此,您需要编译一个表达式树。

查看Delegate.CreateDelegate()

相关内容

  • 没有找到相关文章

最新更新