【发布时间】:2019-02-23 16:35:53
【问题描述】:
我正在尝试在本地运行 Azure 函数 (JavaScript),但它在 func start 上失败并出现以下错误。
AddConfig:绑定类型“表”未注册。请确保类型正确并安装了绑定扩展。
请注意,我已经成功安装了先决条件,当时或写作时是 .NET Core 2.1、Node.JS 和 Core Tools 包。
从上面的错误中可以明显看出,我已将表的输出绑定添加到 function.json 中,用于名为“AddConfig”的函数。我按照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”
标题确实说明了一切。我创建了一个函数应用程序,添加了一个函数,创建了一个绑定,安装了扩展,然后复制/粘贴了 extensions.csproj,但错误仍然存在。
我的function.json,以防有人感兴趣
httpTrigger 和 http 绑定是在我创建函数时生成的,而 table 绑定是从文档中复制的(然后我更改了 tableName 和 connection 属性,但我认为这不是问题)。
{
"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文件夹和extensions.csproj文件然后再次运行这个命令吗? -
@JerryLiu - 感谢您的回复。删除
obj文件夹似乎已经成功了。但是,我仍然必须针对存储包,这不是文档所建议的。希望 MS 能在不久的将来使他们的文档准确无误。
标签: azure azure-functions azure-functions-core-tools