Azure 服务总线订阅操作 - 将订阅名称设置为自定义属性

Azure service bus subscription action - set subscription name as custom properties

我需要为从订阅自动转发的消息添加自定义 属性。新 属性 的值应该是订阅名称。我发现我可以使用订阅规则向消息添加新属性,并且我可以在那里添加一些硬编码值,但我找不到如何获取订阅名称。

这是我如何在规则中使用硬编码值设置新 属性 的示例:

SET user.originQueue = 'test'

我正在看这里 Subscription Rule SQL Action Syntax 但我不知道如何获得订阅名称

还有一种方法可以在 Azure 门户中预览订阅规则吗?我只能在门户中看到过滤器。现在我正在使用命令行来验证规则。

您可以使用管理客户端获取名称

    using Azure.Messaging.ServiceBus.Administration;
    var adminclient = new ServiceBusAdministrationClient(ServiceBusConnectionString);
    SubscriptionProperties runtime = await adminclient.GetSubscriptionAsync(queueName, "subscription-test");
    Console.WriteLine("This is the subscription name " + runtime.SubscriptionName);

https://docs.microsoft.com/en-us/dotnet/api/azure.messaging.servicebus.administration?view=azure-dotnet