升级MassTransit到8.1版本后,注册码如下:
services.AddMassTransit(config =>
{
config.AddConsumer<SubmitOrderConsumer>(cfg =>
{
cfg.UseInMemoryOutbox(); // Obsolete
})
config.UsingRabbitMq((ctx, cfg) =>
{
cfg.ConfigureEndpoints(ctx);
});
});
被报告为已过时,并显示以下错误消息:
InMemoryOutboxConfigurationExtensions.UseInMemoryOutbox(IConsumerConfigurator, Action)' 已过时:'改用 IRegistrationContext 重载。
我知道我应该使用
IRegistrationContext
,但我不知道从哪里可以得到它?
出于某些原因,我不想将 InMemoryOutbox 启用移动到端点级别或消费者定义类。
还有其他选择吗?
额外的重载已添加,以便可以传递注册上下文。它们将包含在最新的预发行包中并随 8.1.1 一起发布。
services.AddMassTransit(config =>
{
config.AddConsumer<SubmitOrderConsumer>((context, cfg) =>
{
cfg.UseInMemoryOutbox(context);
})
config.UsingRabbitMq((ctx, cfg) =>
{
cfg.ConfigureEndpoints(ctx);
});
});