在MassTransit 5.2.0中,我使用ConfigurePublish中的UseSendExecute方法将头添加到特定的消息类型:
var bus = BusConfigurator.ConfigureBus((h,cfg) =>
{
h.ConfigurePublish(x =>
x.UseSendExecute<TestMessage>(p =>
{
p.Headers.Set("x-deduplication-header", p.Message.Day.Ticks);
}));
});升级到MassTransit 5.2.1之后,UseSendExecute方法在ConfigurePublish中不再可用。
深入了解一下MassTransit.DelegatePipeConfiguratorExtensions.中的MassTransit更改,我发现问题的出现是因为MassTransit.IPublishPipeConfigurator不再实现MassTransit.ISendPipeConfigurator,而UseSendExecute是ISendPipeConfigurator在MassTransit.IPublishPipeConfigurator中的扩展方法。
如何使用5.2.1版本设置相同的发布配置?
发布于 2019-01-15 16:59:20
你在配置发布行为。新的语法如下:
var bus = BusConfigurator.ConfigureBus((h,cfg) =>
{
h.ConfigurePublish(pc => pc.AddPipeSpecification(
new DelegatePipeSpecification<PublishContext<TestMessage>>(p =>
{
p.Headers.Set("x-deduplication-header", p.Message.Day.Ticks);
})));
});https://stackoverflow.com/questions/54200497
复制相似问题