Asp.net core 如何在Dapr中为.Net Core外部控制器订阅主题

Asp.net core 如何在Dapr中为.Net Core外部控制器订阅主题,asp.net-core,dapr,Asp.net Core,Dapr,几天前我刚开始使用Dapr,虽然我能够在Dapr中发布和订阅事件,但我这样做的方式是在控制器内的操作方法上使用主题方法属性,例如 虽然这样做有效,但我不希望将集成事件与服务API混合使用。这是狂妄自大 我知道主题名称很长,但它很长,因此我可以确保主题的唯一性 我更喜欢将处理程序放置在任何控制器之外。像这样的 这可能吗?我从.Net Dapr客户端路由示例中导出了一个解决方案 对于每个事件,我添加一个MapPost端点,如下所示 RequestDelegator接收给定主题的事件,它将从接

几天前我刚开始使用Dapr,虽然我能够在Dapr中发布和订阅事件,但我这样做的方式是在控制器内的操作方法上使用主题方法属性,例如

虽然这样做有效,但我不希望将集成事件与服务API混合使用。这是狂妄自大

我知道主题名称很长,但它很长,因此我可以确保主题的唯一性

我更喜欢将处理程序放置在任何控制器之外。像这样的


这可能吗?

我从.Net Dapr客户端路由示例中导出了一个解决方案

对于每个事件,我添加一个MapPost端点,如下所示

RequestDelegator接收给定主题的事件,它将从接口和主题属性解析处理程序类,然后调用其handle方法,从Dapr传入事件数据

我的服务遵循CQRS和EventSourcing模式,因为此类集成事件很少与命令输入具有相同的形状。在我的例子中,事件通常比命令轻得多,命令主要由相关ID组成