asp.net-core - 在 Azure ServiceBus 上使用 MassTransit 时如何在 saga 中使用指定主题
问题描述
我希望特定传奇的所有消息传递都发生在同一个主题上。
我这样设置我的传奇:
public void ConfigureServices(IServiceCollection services)
{
services.AddMassTransit(x =>
{
var machine = new MyStateMachine();
var repository = new InMemorySagaRepository<MyState>();
x.UsingAzureServiceBus((ctx,cfg) => {
cfg.Host(config.ServiceBusConnectionString);
cfg.SubscriptionEndpoint("mySub", "myTopic", e =>
{
e.StateMachineSaga(machine, repository);
});
});
});
}
在状态机中,我这样做:
Initially(
When(FirstEvent)
.PublishAsync(context => context.Init<SecondMessage>(new { TestParam = "test"}))
.TransitionTo(FirstState));
我希望将 SecondMessage 发布在主题“myTopic”上,但 MassTransit 会为此消息创建一个新主题。
解决方案
推荐阅读
- python - 如何避免超出“while”中的时间限制?(Python)
- mysql - 如何在不显示垃圾字符的情况下导入 csv 文件?
- electron - 离子 5 + 电子
- javascript - 当我们在 React 中使用 Material-UI 单击菜单项时,如何更改侧边栏的菜单项颜色?
- php - 如何在 PHP 中从 Telegram 获取 callback_data
- python - 了解使用 matplotlib 从 .txt 文件在 python 中创建图形的逻辑和代码
- java - JAXB 将列表转换为地图
- regex - nutch 1.16 在文件系统抓取中跳过 file:/directory 样式的链接
- gcc - 使用 gfortran 优于 gcc 的优势
- react-native - 您的项目正在使用已弃用的“rnpm”配置,该配置将从下一个版本开始停止工作。请使用“react-native.config.js”文件进行配置