GetEvent<祝辞.事件聚合器的订阅产生异常

本文关键字:异常 祝辞 事件 GetEvent | 更新日期: 2023-09-27 18:05:55

我正在使用反射加载dll,然后尝试在该dll中执行方法。这个方法有这一行,它订阅了一个事件。在

这行出现异常

这行是在dll中,我使用反射动态调用

evntAgg.GetEvent<ExceptionEvent>().Subscribe(Message);

异常是这样的:

IDelegateReference的目标类型应该是System。Action ' 1[[CustomType, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]。参数名称:actionReference

这是事件处理方法,并且在我动态调用的同一个dll中

public void Message(ExceptionEvent exception)
{
//Do something
}

任何帮助都将是感激的?

GetEvent<祝辞.事件聚合器的订阅产生异常

当使用Prism的EventAggregator -class时,您将需要满足某些要求:

  1. 定义源自CompositePresentationEvent<TEventArgs>的事件,其中TEventArgs源自System.EventArgs

  2. 定义一个public方法来处理你的事件,以TEventArgs的实例作为参数;例如:

    public void HandleExceptionEvent(ExceptionEventArgs eventArgs)
    {
    }
    

    方法必须是公共的,否则EventAggregator将无法调用该方法

  3. 订阅您的活动:

    evntAgg.GetEvent<ExceptionEvent>.Subscribe(HandleExceptionEvent);