禁用的 Azure 函数仍会从 Azure 存储队列中提取消息

Disabled Azure Function Still Pulls Messages off of Azure Storage Queue

我有一个基本的 QueueTrigger Azure 函数。当我在 Azure 门户中禁用该功能时,它仍在从存储队列中提取消息(因为当我在 Azure 队列存储资源管理器中查看队列时,队列是空的,如果我添加一条消息,它会立即被提取)。

代码如下:

[FunctionName("ProcessMessage")]
public static void Run([QueueTrigger("queue-name", Connection = "queue-connection")] Models.Message message, TraceWriter log)
{
    log.Info($"C# Queue trigger function processed: {message}");
}

我注意到当我停止整个函数应用程序时它停止处理队列外的消息,但我希望我可以暂时禁用队列处理而不停止整个函数应用程序。如何做到这一点?

谢谢!

禁用在 Visual Studio 中创建的 V1 功能在 Azure 门户中不起作用。您应该使用属性:

https://docs.microsoft.com/en-us/azure/azure-functions/disable-function#functions-1x---c-class-libraries (见重要部分)