C# Azure函数中local.settings.json的值

C# Azure函数中local.settings.json的值,c#,azure,azure-functions,azureservicebus,C#,Azure,Azure Functions,Azureservicebus,我创建了一个Azure函数,看起来像这样(实际上,大部分工作是由Microsoft模板完成的!): 我的local.settings.json如下所示: { "IsEncrypted": false, "Values": { "AzureWebJobsStorage": "..", "AzureWebJobsDashboard": "..", "AzureWebJobsServiceBus": "..", "queue-name": "testque

我创建了一个Azure函数,看起来像这样(实际上,大部分工作是由Microsoft模板完成的!):

我的local.settings.json如下所示:

{
    "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "..",
    "AzureWebJobsDashboard": "..",
    "AzureWebJobsServiceBus": "..",
    "queue-name":  "testqueue"

  }
}
然后我部署了这个函数。这是一个奇怪的问题,因为我的问题是,它立即起作用,但我没想到它会起作用。function.json如下所示:

{
  "generatedBy": "Microsoft.NET.Sdk.Functions-1.0.0.0",
  "configurationSource": "attributes",
  "bindings": [
    {
      "type": "serviceBusTrigger",
      "queueName": "%queue-name%",
      "accessRights": "listen",
      "name": "myQueueItem"
    }
  ],
  "disabled": false,
  "scriptFile": "..\\bin\\FunctionApp8.dll",
  "entryPoint": "FunctionApp8.Function1.Run"
}
显然,local.settings.json中的值已复制到函数设置中,但我在门户中看不到它们。我的问题是:这些设置现在存储在哪里(队列名称和AzureWebJobsServiceBus)

编辑:

我的功能应用程序设置:


在Azure中,功能设置取自应用程序设置选项卡,与应用程序内服务相同

您可能也发布了它们,请查看门户UI。

它们将位于Azure门户中已发布功能应用程序的“应用程序设置”选项卡下(见图)

有一些文档!请注意,大多数应用程序设置不会自动发布,需要在发布步骤或发布后进行一些配置


更新:如果两个函数正在侦听同一队列上的事件,则只会触发一个函数。这可能会导致看似错误的行为,因为函数在预期时似乎会触发/不触发


在本例中,意外行为来自相互竞争的函数,而不是意外的连接字符串。

我是这么想的,但它们没有显示在这里。我添加了我的应用程序设置的屏幕截图,我想我误解了。local.settings.json中的设置在发布版本的应用程序设置中不重复是预期行为。其想法是local.settings.json可能包含连接字符串之类的键/机密,不应该发布。您必须返回并添加AzureWebJobsServiceBus和队列名称作为应用程序设置。你发布的应用程序应该可以工作!他们显然在那里。否则该函数将无法工作。我就是找不到,真奇怪。我正试图重新解释这个问题,但做不到。你能通过查看日志来确认你的功能是否真正在运行吗(https://.scm.azurewebsites.net/ =>调试控制台=>CMD=>LogFiles=>Application=>Functions=>Function=>)?由于“testqueue”是一个比较常见的名称,我想知道是否有其他函数可以使用这些消息。另一个尝试是添加一个新的队列并在那里侦听消息。您已经做到了。这是另一个收集信息的过程;我得出结论,这不是因为我测试时,他们在那里呆了很长时间(离开他们20分钟)。出于某种原因,捡起它们的过程似乎在看似随机的时间冲刺进入生活!谢谢你的帮助。我已经从这个选项卡添加了一个屏幕截图。如你所见-它们不在那里。@pm_2好的,这很有趣。。。你怎么知道你的功能在工作?它是否仍在本地运行,而您将其与在Azure中运行混淆了?正如我前面所述,这是另一个接收消息的进程。谢谢你的帮助。
{
  "generatedBy": "Microsoft.NET.Sdk.Functions-1.0.0.0",
  "configurationSource": "attributes",
  "bindings": [
    {
      "type": "serviceBusTrigger",
      "queueName": "%queue-name%",
      "accessRights": "listen",
      "name": "myQueueItem"
    }
  ],
  "disabled": false,
  "scriptFile": "..\\bin\\FunctionApp8.dll",
  "entryPoint": "FunctionApp8.Function1.Run"
}