无法加载类型 Microsoft.Azure.WebJobs.ParameterBindingData

Hor*_*aje 8 azure azure-functions azure-functions-core-tools

我目前正在 VS Code 中开发 Azure 函数。我遇到了一个错误,该错误已在此 GitHub问题中报告。错误全文如下:Microsoft.Azure.WebJobs.Extensions.ServiceBus: Could not load type 'Microsoft.Azure.WebJobs.ParameterBindingData' from assembly 'Microsoft.Azure.WebJobs, Version=3.0.34.0, Culture=neutral, PublicKeyToken=****'. Value cannot be null. (Parameter 'provider')

建议的解决方案之一是降级Microsoft.Azure.WebJobs.Extensions.Storage. 但是,我不知道如何从扩展包降级包。在我的本地开发环境中,我使用以下默认host.json配置:

{
  "version": "2.0",
  "logging": {
    "applicationInsights": {
      "samplingSettings": {
        "isEnabled": true,
        "excludedTypes": "Request"
      }
    }
  },
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[3.15.0, 4.0.0)"
  }
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试了多个版本范围,每个版本范围都会导致相同的错误。由于我不熟悉.NET,因此我希望获得有关如何降级软件包以解决此问题的任何帮助或建议。谢谢。

附加信息: 我正在使用测试触发器在本地开发 EventHub 触发函数:

@app.function_name(name="EventHubTrigger1")
@app.event_hub_message_trigger(arg_name="myhub", event_hub_name="samples-workitems",
                               connection="") 

def test_function(myhub: func.EventHubEvent):
    logging.info('Python EventHub trigger processed an event: %s',
                myhub.get_body().decode('utf-8'))
Run Code Online (Sandbox Code Playgroud)

local.settings.json情况如下:

{
  "IsEncrypted": false,
  "Values": {
    "FUNCTIONS_WORKER_RUNTIME": "python",
    "AzureWebJobsStorage": "UseDevelopmentStorage=true",
    "AzureWebJobsFeatureFlags": "EnableWorkerIndexing"
  }
}
Run Code Online (Sandbox Code Playgroud)

更新: 解决此问题的另一种方法是使用以下命令重新安装/更新 azure function core 工具:

sudo apt-get update
sudo apt-get install azure-functions-core-tools-4
Run Code Online (Sandbox Code Playgroud)

小智 7

通过将版本范围更新为以下解决了此问题:

"version": "[3.3.0, 3.9.0)"


Sid*_*sai 6

请参阅我在这篇文章中的答案来解决类似的错误代码。

请参阅乔恩·科特 (Jon Koeter) 的答案和维多利亚·贝拉 (Victoria Berra) 的答案

确保从本地计算机中删除这 2 个文件夹,这些文件夹在本地运行 Azure Function 时可能会发生冲突:-

在此输入图像描述

删除这 2 个文件夹后,请确保删除 Azure Function Core 工具,您可以从本地计算机中的以下设置的环境变量中获取 Azure Function Core 工具的路径:-

在此输入图像描述

访问 > C:\Program Files\Microsoft\Azure Functions Core Tools\,然后删除 Azure Functions Core Tools 文件夹。

在此输入图像描述

现在,再次从此MS 文档安装 Azure Function 核心工具,然后创建并运行 Azure Function 事件网格触发器。

我通过上面的链接再次安装了 Azure Function Core 工具,并在本地创建了一个 Azure 事件网格触发器,触发器成功运行,如下所示:-

在此输入图像描述


归档时间:

查看次数:

10301 次

最近记录:

2 年,6 月 前