我想了解在中间件中修改ServiceBusReceivedMessage的相关ID属性的可能性和方法。如果这无法实现,我愿意接受替代建议,以执行在实际函数之前提到的操作。
.NET 6隔离函数v4
public class MiddlewareA : IFunctionsWorkerMiddleware
{
public Task Invoke(FunctionContext context, FunctionExecutionDelegate next)
{
// access the ServiceBusReceivedMessage, evaluate its properties like
// correlationId and update if it does not exist
return next.Invoke(context);
}
}
字符串
1条答案
按热度按时间zte4gxcn1#
目前,您无法将CorrelationID修改为Azure Service Bus的只读属性。这是其属性的一部分。它类似于Content Type、ToReplyTo**,就像其他类型的消息模式一样。
但是,您可以将包括CorrelationID在内的服务总线属性格式化,并在代码中将其传递给输出消息,如Github Issue1、Github Issue2和Github Issue3中所引用的
下面是我的自定义中间件记录的CorrelationID,您可以使用此CorrelationId在您的输出消息如下:-
我的CorrelationIdMiddleware.cs:-
字符串
我的Function1.cs:-
型
我的程序.cs:-
型
输出:-
x1c 0d1x的数据