Mediator.Net 可以支持多事件处理程序和继承吗?
Can Mediator.Net support multi event handlers as well as inheritance?
可以mediator.net支持多事件处理程序吗?我想让多个处理程序监听同一个事件并做不同的事情。
public class SimpleCommand : ICommand
{
public Guid Id { get; }
public SimpleCommand(Guid id)
{
Id = id;
}
}
在Mediator.Net中,只要消息实现了 IEvent 接口,您就可以拥有任意数量的事件处理程序,但只有 1 个命令处理程序。从您的代码示例中,因为 SimpleCommand 是一个 ICommand,这意味着您只能有一个处理程序。
在继承方面,ICommand 处理程序需要是完全相同的类型,这意味着不支持继承。对于 IEvent,只要 Handler 可以从消息类型中分配,那么它就应该被调用,所以 inheritace 就在里面。
可以mediator.net支持多事件处理程序吗?我想让多个处理程序监听同一个事件并做不同的事情。
public class SimpleCommand : ICommand
{
public Guid Id { get; }
public SimpleCommand(Guid id)
{
Id = id;
}
}
在Mediator.Net中,只要消息实现了 IEvent 接口,您就可以拥有任意数量的事件处理程序,但只有 1 个命令处理程序。从您的代码示例中,因为 SimpleCommand 是一个 ICommand,这意味着您只能有一个处理程序。
在继承方面,ICommand 处理程序需要是完全相同的类型,这意味着不支持继承。对于 IEvent,只要 Handler 可以从消息类型中分配,那么它就应该被调用,所以 inheritace 就在里面。