无法运行Azure函数获取错误,因为连接字符串未设置



我有这个 azure function,应该 read a message from service bus queue.

我已经将连接字符串授予代码仍会在运行func时丢弃错误 -

Set the connection string named 'Endpoint=sb://demoser
vicebus2019.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKe
y;[Hidden Credential]' in the connectionStrings section of the .config file in t
he following format <add name="Endpoint=sb://demoservicebus2019.servicebus.windo
ws.net/;SharedAccessKeyName=RootManageSharedAccessKey;[Hidden Credential]" conne
ctionString="DefaultEndpointsProtocol=http|https;AccountName=NAME;AccountKey=KEY

代码 - 功能1.cs

 public static class Function1
    {
        [FunctionName("Function1")]
        public static void Run([QueueTrigger("customer", Connection = "Endpoint=sb://demoservicebus2019.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=text")]string myQueueItem, TraceWriter log)
        {
            log.Info($"C# Queue trigger function processed: {myQueueItem}");
        }
    }

local.setting.json

{
    "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "storageaccount-connectionstring",
    "AzureWebJobsDashboard": "storageaccount-connectionstring"
  }
}

,因此连接属性是环境/配置变量的关键,而不是实际连接字符串。

您可以在此处阅读有关绑定的信息

包含用于此绑定的存储连接字符串的应用程序设置的名称

所以将其更改为:

public static class Function1
{
    [FunctionName("Function1")]
    public static void Run([QueueTrigger("customer", Connection = "MyConnection")]string myQueueItem, TraceWriter log)
    {
        log.Info($"C# Queue trigger function processed: {myQueueItem}");
    }
}

配置

{
    "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "storageaccount-connectionstring",
    "AzureWebJobsDashboard": "storageaccount-connectionstring"
 "MyConnection":"Endpoint=sb://demoservicebus2019.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=text"
  }
}

相关内容

最新更新