Azure功能:服务总线输入绑定(不触发)

时间:2017-02-24 09:59:11

标签: azure azureservicebus azure-functions

是否可以为我的azure函数定义输入绑定以连接到Service Bus队列/主题?

我可以想象类似的东西 this syntax for storage queue但我无法使其适用于Service Bus,我也无法在线查看示例。

我希望获得QueueClient和/或QueueDescription类的实例。

该函数的用例是根据HTTP触发器和查询参数中的名称返回队列大小。

2 个答案:

答案 0 :(得分:2)

不,我们目前不支持NamespaceManager / QueueClient输入绑定,就像我们对Azure队列一样。但是,您可以直接在函数中使用ServiceBus SDK轻松完成此操作,无需提取任何其他软件包。 E.g。

#r "Microsoft.ServiceBus"

using System;
using Microsoft.Azure.WebJobs;
using Microsoft.ServiceBus;
using Microsoft.ServiceBus.Messaging;

public static void Run(string input, TraceWriter log)
{
    var connectionString = Environment.GetEnvironmentVariable("<connection>");
    var nsmgr = NamespaceManager.CreateFromConnectionString(connectionString);
    long count = nsmgr.GetQueue("myqueue").MessageCount;
    log.Info($"Message count {count}");
}

关于文档不完全正确的存储队列,我之前记录了一个问题here来解决这个问题。我还为我们记录了一个新问题here,以扩展我们的ServiceBus绑定。

答案 1 :(得分:1)

根据概述部分中的this表,不支持服务总线队列/主题的输入绑定。