gpt4 book ai didi

azure - 如何将 DocumentDB 输入绑定(bind)到 Azure Function?

转载 作者:行者123 更新时间:2023-12-02 06:21:06 24 4
gpt4 key购买 nike

我有一个在 Azure 门户中创建的 Azure Function,现在想要使用与 VS2017 Preview 关联的 Visual Studio Azure 工具重新创建它。

我的函数是计时器触发的,并且还具有 Azure DocumentDB(带有查询)的输入绑定(bind)和到 Azure 服务总线队列的输出绑定(bind)。

这是来自门户的 functions.json 定义:

{
"bindings": [
{
"name": "myTimer",
"type": "timerTrigger",
"direction": "in",
"schedule": "0 */5 * * * *"
},
{
"type": "serviceBus",
"name": "outputQueue",
"queueName": "test-output-requests",
"connection": "send-refresh-request",
"accessRights_": "Send",
"direction": "out"
},
{
"type": "documentDB",
"name": "incomingDocuments",
"databaseName": "test-db-dev",
"collectionName": "TestingCollection",
"sqlQuery": "select * from c where c.docType = \"Test\"",
"connection": "my-testing_DOCUMENTDB",
"direction": "in"
}
],
"disabled": false
}

在 VS2017 中,我创建一个 Azure Function 项目,然后使用 TimerTriggered 模板创建一个 Azure 函数:

public static void Run([TimerTrigger("0 */5 * * * *")] TimerInfo myTimer, TraceWriter log, ICollector<dynamic> outputQueue, IEnumerable<dynamic> incomingDocuments)
{
log.Info($"C# Timer trigger function executed at: {DateTime.Now}");

//Inspect incomingDocuments .. push messages to outputQueue
}

在本地运行,计时器按预期触发 - 但如何在代码中重新创建输入和输出绑定(bind)?我不确定应该使用哪些属性,以及 json 配置文件中需要什么来连接它。

最佳答案

  1. 添加对以下 nuget 包的引用 https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.DocumentDB/
  2. 使用 Microsoft.Azure.WebJobs 添加
  3. 按如下方式更新 documentDb 参数(同时添加其他属性)

    [DocumentDB(ConnectionStringSetting = "")]IEnumerable<dynamic> incomingDocuments
  4. 按如下方式更新 serviceBus 参数

    [ServiceBus("test-output-requests",Connection = "ConnectionValue")]

bin/functionName/function.json中验证生成的function.json

谢谢,
纳仁

关于azure - 如何将 DocumentDB 输入绑定(bind)到 Azure Function?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43927451/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com