我正在Azure中创建一个函数应用程序,并希望使用队列触发器。 我知道如何在设计时设置队列名称,e.g:如何在Azure功能应用程序中为队列触发器配置队列名称
[FunctionName("MyTestFunction")]
public static void Run([QueueTrigger("myqueue-items", Connection = "testdelete")]string myQueueItem, TraceWriter log)
不过,我希望能够定义和在配置文件中引用它。 我知道function.json(可能是这一个),host.json和local.settings.json的存在,但我不知道如何在那里设置一个队列名称并让它在函数中被引用。
如果我部署在Visual Studio中创建的新创建函数(使用新的15.3更新),我可以在部署后的function.json文件中看到以下内容(即使我在本地开发时该文件不存在) :
"bindings": [
{
"type": "queueTrigger",
"queueName": "myqueue-items",
"connection": "testdelete",
"name": "myQueueItem"
}
我发现,如果我创建这个文件,并修改“QUEUENAME”的东西,并没有实际功能的值相匹配,就遗憾的是不重写它(我想这可能太容易了)。
如何在函数QueueTrigger属性中引用function.json中的绑定?
大概无论什么解决方案是否会允许我用毒队列处理做同样的事情?
我想这样做的原因是因为我需要部署完全相同功能的多个实例,但将每个实例指向不同的队列(为了解决最大内存限制)。
谢谢。
我建议你实现INameResolver接口。 https://stackoverflow.com/questions/44901165/azure-function-flexible-test-and-production-queue-names – camelCase