我ServiceBusTrigger
在收到消息时使用 a 来执行代码。我想使用Singleton 属性来限制可以并行执行的消息。该属性允许指定绑定到传入消息属性的范围,这样具有不同值的消息可以并行执行,但具有相同值的消息必须串行执行。
这在使用传入消息对象(如 CorrelationId)的顶级属性时有效。
例子
[Singleton("{CorrelationId}", SingletonScope.Function, Mode = SingletonMode.Function)]
public async Task HandleMessage(
[ServiceBusTrigger("my-topic-name", "my-subscription-name"), ServiceBusAccount("my-account-name")]
Message message,
CancellationToken cancellationToken
)
{
await Task.Yield();
}
我正在努力弄清楚的是如何使用消息上的用户属性实现相同的行为。这些都存储在对象的UserProperties
字典中Message
。我没有看到用Singleton
属性中的绑定语句来引用这些的方法,但是当Singleton
与ServiceBusTrigger