Azure Functions Core Tools 无法安装绑定所需的扩展

Azure Functions Core Tools failing to install extensions required for bindings

我正在尝试在本地 运行 一个 Azure 函数 (JavaScript),但它在 func start 时失败并出现以下错误。

AddConfig: The binding type(s) 'table' are not registered. Please ensure the type is correct and the binding extension is installed.

请注意,我已经成功安装了先决条件,当时或写作是.NET Core 2.1Node.JS 核心工具 包。

从上面的错误中可以明显看出,我为一个名为 [=68 的函数添加了 Table 到 function.json 的输出绑定=].我根据 documentation.

添加了绑定

有人能告诉我这里可能遗漏了什么吗?

我尝试过的事情

遵循文档

我在项目文件夹中运行下面的命令,按照documentation.

func extensions install

这产生了以下输出 -

Microsoft (R) Build Engine version 15.9.20+g88f5fadfbe for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.

  Restoring packages for C:\super-secret-path\WitchHunt\AddConfig\extensions.csproj...
  Generating MSBuild file C:\super-secret-path\WitchHunt\AddConfig\obj\extensions.csproj.nuget.g.props.
  Generating MSBuild file C:\super-secret-path\WitchHunt\AddConfig\obj\extensions.csproj.nuget.g.targets.
  Restore completed in 314.99 ms for C:\super-secret-path\WitchHunt\AddConfig\extensions.csproj.
  extensions -> C:\super-secret-path\WitchHunt\AddConfig\bin\extensions.dll

Build succeeded.
    0 Warning(s)
    0 Error(s)

Time Elapsed 00:00:01.66

该命令还导致 extensions.csproj 被添加到项目中,内容如下 -

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
    <WarningsAsErrors></WarningsAsErrors>
    <DefaultItemExcludes>**</DefaultItemExcludes>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.Azure.WebJobs.Script.ExtensionsMetadataGenerator" Version="1.0.1" />
  </ItemGroup>
</Project>

以所需的扩展为目标

我尝试使用以下命令手动安装扩展。虽然此操作起作用并导致包引用被添加到 extensions.csproj,但重新运行 函数导致相同的错误。

func extensions install --package Microsoft.Azure.WebJobs.Extensions.Storage --version 3.0.3

正在 Portal 上创建绑定并复制 'extensions.csproj'

标题说明了一切。我创建了一个函数应用程序,添加了一个函数,创建了一个绑定,安装了扩展然后 copied/pasted extensions.csproj,但错误仍然存​​在。

我的function.json,以防有人感兴趣

httpTriggerhttp 绑定是我创建函数时生成的绑定,而 table 绑定是从文档中复制的(然后我更改了 tableNameconnection 属性,但我认为这不是问题)。

{
    "disabled": false,
    "bindings": [
        {
            "authLevel": "function",
            "type": "httpTrigger",
            "direction": "in",
            "name": "req",
            "methods": [
                "get",
                "post"
            ]
        },
        {
            "type": "http",
            "direction": "out",
            "name": "res"
        },
        {
            "tableName": "WitchHuntConfig",
            "connection": "AzureWebJobsStorage",
            "name": "tableBinding",
            "type": "table",
            "direction": "out"
        }
    ]
}

func extensions install --package Microsoft.Azure.WebJobs.Extensions.Storage --version 3.0.3 应该修复,尝试删除 bin obj 文件夹,然后再次 运行 此命令。

func extensions install也不是没用,关键是绑定类型table不在BindingPackageMap hence the extension is not installed. Have open an issue中去跟踪。