首页 > 解决方案 > 将 Visual Studio 2019 升级到版本 16.4 后,Azure 函数在 azure 门户上引发绑定错误

问题描述

生产 azure 函数为使用 SignalR 的函数引发绑定错误。使用 Visual Studio 2019(16.4) 部署新版本后出现问题。以前它在升级 VS2019 之前工作正常。不幸的是,为了解决这个问题,我不得不从 Visual Studio 2017 重新构建函数项目,并且它在部署 VS2017 构建后工作。

我已经从 VS 安装程序修复了 VS2019,卸载并重新安装了 VS2019 Azure 云工作负载,但问题没有解决。VS2019 - 16.4 中的 azure 功能有什么重大变化吗?如何使用 VS2019 解决此问题?

代码:

[FunctionName("TelemetryProcessor")]
        public static async System.Threading.Tasks.Task RunAsync([IoTHubTrigger(
            "messages/events",
            Connection = "IoTHubConnectionString",
            ConsumerGroup ="device")]EventData message,
            [SignalR(HubName = "TelemetryHub")] IAsyncCollector<SignalRMessage> signalRMessages,
            ExecutionContext context,
            ILogger log)
        {
}

错误:

在此处输入图像描述

标签: azure-functions

解决方案


当使用 IoTHubTrigger 并尝试从 VS2019 进行部署时,“方向”在“绑定”下的function.json文件(部署在 Azure 中)中被忽略。我必须手动编辑并添加“direction”:“in”作为我的绑定,以便在每次部署后开始工作。您可以使用应用服务编辑器进行编辑。

编辑:此外,您必须删除“从包文件运行”,否则您将无法进行编辑。


推荐阅读