我正在运行Visual Studio v15.3并尝试创建Azure功能。我无法将输出绑定到服务总线队列。我启动时收到以下错误:
Microsoft.Azure.WebJobs.Host:错误索引方法 ' CreateRawTransactions.Run&#39 ;. Microsoft.Azure.WebJobs.Host:无法绑定 参数' outputSbQueue'键入String&amp ;.确保参数 绑定支持类型。如果您正在使用绑定扩展程序 (例如ServiceBus,计时器等)确保你已经打电话给 您的启动代码中的扩展名的注册方法(例如 config.UseServiceBus(),config.UseTimers()等。)。
我的function.cs代码......
public static class CreateRawTransactions
{
[FunctionName("CreateRawTransactions")]
public static HttpResponseMessage Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)]HttpRequestMessage req,
TraceWriter log,
[ServiceBus("outqueue", AccessRights.Manage, Connection = "ServiceBusConnection")] out string outputSbQueue)
{
outputSbQueue = "Hello ";
}
}
和function.json
{
"bindings": [
{
"name": "outputSbQueue",
"type": "serviceBus",
"queueName": "testqueue",
"connection": "ServiceBusConnection",
"direction": "out",
"accessRights": "listen"
}
],
"disabled": false
}
和local.settings.json
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "",
"AzureWebJobsDashboard": ""
},
"ConnectionStrings": {
"ServiceBusConnection": "Endpoint=sb://..."
}
}
作为更新,我将输入触发器从HttpTrigger更改为ServiceBusTrigger并且它可以正常工作。看起来它与使用HttpTrigger有关。
答案 0 :(得分:0)
这听起来像https://github.com/Azure/azure-webjobs-sdk-script/pull/1804,并已修复。如果您获得更新的CLI,它应该可以工作。