0

在这里查看一些非常有趣的演示 CQRS 代码命令和处理程序被拆分为单独的接口。

public interface CommandHandler<in T>
{
    void Handle(T command);
}

public interface EventHandler<in T>
{
    void Handle(T @event);
}

我正在自动连接命令和事件,似乎membus可能存在限制,它只能连接 CommandHandlers 或 EventHandlers,但无论哪种方式,我都在想:

Handler鉴于两个接口都有一个 Handle 方法,以这种方式拆分命令和事件的想法是什么,而可以使用单个通用命令/事件接口代替?

4

1 回答 1

3

区别在于语义 - 事件和命令在语义上是不同的消息类型,将这种区别明确化可能是有益的。由于每种消息类型可能具有独特的处理要求,因此可以在组织和功能方面获得好处。

于 2013-04-22T00:49:46.457 回答