仅在执行另一个函数后才激活 azure 函数?

Activate azure function only after another function have executed?

我有一个 PostStartupSetup azure 函数,每次启动时都会 运行

[FunctionName(nameof(PostStartupSetup))]
public async Task PostStartupSetup([TimerTrigger("0 0 0 29 2 6", RunOnStartup = true)]TimerInfo t)
{
    // do startup tasks
}

然后我有一些 ServiceBusTrigger 的功能依赖于我的 PostStartupSetup 才能完成。是否有可能以某种方式仅在我的 PostStartupSetup 函数执行完毕后才激活这些函数?

没有直接的方法,但这里有几个选项:

  1. 如果您是专用计划,您可以使用 Durable Functions,将一些共享变量设置为 true/false 以指示“启动”是否完成,如果未完成,则所有其他功能将继续失败并显示适当的错误代码。
  2. 如果您有消费计划,那么您可以使用一些便宜的选项(例如存储表)来跨函数共享状态并执行相同的操作。
  3. 您可以真正禁用(未测试)功能并动态启用它们: