我有一个正在尝试使用 NServiceBus 实现的功能,但不确定要在此处使用的模式。(我对 NServiceBus 还很陌生)
我将尝试解释我的不确定性来自哪里:
用户交互触发 MVC 控制器发送命令以执行域操作。此命令引发事件以通知其他人发生了这种情况。
订阅此事件的处理程序确定是否应该发生另一个域操作。
这是我不清楚要遵循的正确模式的地方。此时事件处理程序应该:
- 只需进行所需的更改?
- 发送一个新的命令来做呢?如果是这样,将其发送回原始服务/进程?
- 另外一个选项?
我的一部分想知道我是否应该使用进程内域事件来处理这个问题,但我认为第一个命令不应该在第二个命令返回之前等待。事实上,它可能会在很久以后发生。这就是为什么我选择使用总线来异步处理它的原因。此外,一旦第二次操作完成,将需要生成一封电子邮件。是否应该从另一个事件/命令触发?
任何和所有的指导表示赞赏。