【问题标题】:Can I configure a default value for an Azure Functions binding expression?我可以为 Azure Functions 绑定表达式配置默认值吗?
【发布时间】:2020-04-28 07:11:44
【问题描述】:

我想尽可能简化 Azure Functions v3 项目的部署。

以这个函数为例,它使用绑定表达式来引用DoTheThingSchedule appsetting:

[FunctionName("DoTheThing")]
public async Task Run([TimerTrigger("%DoTheThingSchedule%")]TimerInfo timer)
{
    // do the thing
}

对于本地开发,我可以在local.settings.json 中为DoTheThingSchedule 配置一个值,但我还没有找到在生产环境中配置默认​​值的方法,这意味着我总是必须在 Azure 中显式配置此设置.

有人知道解决这个问题的方法吗?

【问题讨论】:

  • 无论您在 local.settings.json 中使用什么配置,都应该能够在应用设置中执行这些条目。更多详情请参考文档。
  • 因为Azure Function在部署时不会上传local.settings.json文件和对应的值,所以需要在Azure上手动输入。如果使用VS部署,可以在部署前设置好值。
  • 您好,如果我的回答回答了您的问题,您可以mark it as the answer 结束这个问题吗?:)
  • 我没有真正的解决方案,只有你的建议,它根本不可能。因此,我正在等待几天,看看是否有其他答案。
  • @BowmanZhu,现在标记你的答案:)

标签: c# azure .net-core azure-functions


【解决方案1】:

Azure 需要你在 azure 的配置设置中添加设置。它不会将 local.settings.json 文件上传到 azure。但是如果你是用VS发布的,可以在发布前进行设置:

【讨论】:

  • 我们实际上是在使用 Terraform 来自动创建我们的 Azure 资源,并通过 zip 进行部署,所以我不直接从 VS 发布。
  • @Storm-BE 如果是这样,您仍然必须在 azure 上手动设置它。如果没有设置,它将不起作用。
  • 太糟糕了 :) 那么我想要实现的目标似乎是不可能的
  • @Storm-BE 我们不能将字符串转换为 const 字符串,cron 必须是 const。所以如果你不设置env var,那就没办法了……
猜你喜欢
  • 2019-06-14
  • 1970-01-01
  • 2016-06-10
  • 1970-01-01
  • 2019-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-05
相关资源
最近更新 更多