c# - 只有在另一个功能执行后才激活天蓝色功能?
问题描述
我有一个PostStartupSetup
将在每次启动时运行的天蓝色功能
[FunctionName(nameof(PostStartupSetup))]
public async Task PostStartupSetup([TimerTrigger("0 0 0 29 2 6", RunOnStartup = true)]TimerInfo t)
{
// do startup tasks
}
然后我有一些ServiceBusTrigger
依赖于我PostStartupSetup
完成的功能。PostStartupSetup
是否有可能仅在我的功能完成执行后才激活这些功能?
解决方案
没有直接的方法,但这里有几个选项:
- 如果您是专用计划,则可以使用Durable Functions,将一些共享变量设置为 true/false 以指示“启动”是否已完成,如果未完成,则所有其他功能将继续失败,并显示适当的错误代码。
- 如果你有消费计划,那么你可以使用一些便宜的选项,比如存储表来跨函数共享状态并做同样的事情。
- 您可以真正禁用(未测试)功能并动态启用它们: