gpt4 book ai didi

azure - 输出绑定(bind)并生成function.json

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

我正在尝试创建一个将输出到表的 Azure 函数。我正在使用 Azure Function App,因此,据我目前的了解,function.json 是由 SDK 为我生成的。我的函数定义如下:

public static HttpResponseMessage Run(
[HttpTrigger(AuthorizationLevel.Function, "post", Route = null)]HttpRequestMessage req,
TraceWriter log,
[StorageAccount("table_storage")] ICollector<TableItem> outputTable)

我已将 TableItem 定义为从 TableEntity 继承的类。当我部署它并查看生成的 function.json 时,它没有提到输出参数绑定(bind):

{
"generatedBy": "Microsoft.NET.Sdk.Functions.Generator-1.0.7",
"configurationSource": "attributes",
"bindings": [
{
"type": "httpTrigger",
"methods": [
"post"
],
"authLevel": "function",
"name": "req"
}
],
"disabled": false,
"scriptFile": "../bin/FunctionApp5.dll",
"entryPoint": "FunctionApp5.DeliveryComplete.Run"
}

如果我从 Visual Studio 运行此程序,则会收到以下错误:

Cannot bind parameter 'outputTable' to type ICollector`1

我对此行为有几个问题:第一个也是主要的一个是,为什么 function.json 不显示输出绑定(bind)?其次,我理解为什么当你从 VS 部署时无法编辑它,但是有没有一种方法可以管理绑定(bind)而无需猜测(我在 this post 中使用 ICollector ),但我找不到其他任何地方说它应该或不应该在那里。

最后,从桌面运行此函数如何(或正在)与已发布的函数进行交互:它是否连接到该函数的已发布版本,或者是否在本地生成 function.json?

最佳答案

  1. 这是一个常见的困惑来源,但输入和输出绑定(bind)在生成的 function.json 中不可见,只有触发器可见。它们仍将正常工作。

  2. 如果您尝试写入表存储,则应使用 Table 属性而不是 StorageAccountAzure Table storage bindings for Azure Functions 中提到了 ICollector .

  3. 本地运行时,文件保留在本地并在本地运行时运行,无需部署到 Azure。他们可能仍然通过绑定(bind)与真实的 Azure 服务交互。

关于azure - 输出绑定(bind)并生成function.json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47819492/

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