如何在 azure function app v2 中将 table 存储设置为输出?

How to set table storage as output in azure function app v2?

我已经使用 javascript 在 Azure 门户上创建了函数应用程序,这里是来自 index.js 文件

的代码
module.exports = function (context, iotHubMessage) {

context.log('IotMessage ' + JSON.stringify(iotHubMessage));
var date = Date.now();
var partitionKey = Math.floor(date / (24 * 60 * 60 * 1000)) + '';
var rowKey = date + '';

context.bindings.ParamMessageLog = {
    "partitionKey": partitionKey,
    "rowKey": rowKey,
    "MsgCount": iotHubMessage.length,
    "data": JSON.stringify(iotHubMessage)
};


context.done();
};

我还按照给出的说明手动安装了存储包 here

来自 function.json 文件的片段

{
  "type": "table",
  "name": "ParamMessageLog",
  "tableName": "MessageLog",
  "connection": "<storage account name>_STORAGE",
  "direction": "out"
}

extensions.csproj文件内容如下

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
    <WarningsAsErrors />
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.Azure.WebJobs.Extensions.EventHubs" Version="3.0.0" />
    <PackageReference Include="Microsoft.Azure.WebJobs.Extensions.Storage" Version="3.0.0" />
  </ItemGroup>
</Project>

问题是当我重新启动我的应用程序时,我看到以下错误并且无法 run/test 运行。

Error:
Function (PBDataGateway) Error: The binding type(s) 'eventHubTrigger, table' are not registered. Please ensure the type is correct and the binding extension is installed.

请指教我需要更改的地方。谢谢!

您可能错过了这个用于生成扩展元数据的包。

<PackageReference Include="Microsoft.Azure.WebJobs.Script.ExtensionsMetadataGenerator" Version="1.0.*" />

添加此行后,重复tutorial中的安装步骤。