我有一个.net Azure函数项目,其中包含多个函数,例如EventGridTrigger函数、BlobTrigger函数等。项目中很少有触发器函数需要仅针对特定区域启用。是否可以通过应用程序设置启用/禁用基于区域的触发功能?
[FunctionName("CosmosDBFunction")] //enable only in US-west
public static void Run([CosmosDBTrigger()])
{}
[FunctionName("EventGridFunction")] //enable only in US-east
public static void Run([EventGridTrigger]EventGridEvent eventGridEvent)
{}
编辑:
我正在尝试通过项目内的 appsettings.json 禁用“隔离”Azure 功能。 “[Disable]”和 AzureWebJobs.$FunctionName.Disabled 属性在 appsettings.json 中不起作用,但如果在 Azure 门户中提及则可以正常工作。
最佳答案
您可以使用Disable
属性,该属性会根据应用设置动态禁用特定功能。
例如:
[Disable("FUNCTION_DISABLED")]
[FunctionName(nameof(EventGridFunction))]
public static void Run(...
如果应禁用该功能,每个区域部署都会将 FUNCTION_DISABLED
设置设置为 true
。
关于azure - 根据区域禁用/启用 Azure 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74019228/