【问题标题】:Azure function dotnet-isolated v4Azure 函数 dotnet-isolated v4
【发布时间】:2022-08-09 16:07:35
【问题描述】:

我最近开始了我的 C# 之旅,对我来说如此赤裸裸......

所以我的问题是,在安装 azure-functions-core-toolsv4(使用 brew 的 mac)之后,我终于能够看到为什么 Rider(与插件使用相同)刚刚退出并出现错误(进程以退出代码 137 结束。)。

我试图解决我们在切换到 dotnet-isolated 后遇到的另一个问题 - 即:

Unhandled exception. System.InvalidOperationException: The gRPC channel URI \'http://:0\' could not be parsed.

经过大量的谷歌搜索后,我发现如果我尝试使用“正常”运行(dotnet run ...)在本地运行我的函数,显然会发生这种情况 - 如果我只是在我的 Program.cs Main 上点击运行,则会调用该函数。相反,我应该选择通过 Azure Functions Core Tools 提供的“func host start ...”。

所以我的错误是: Microsoft.Azure.WebJobs.Script: WorkerConfig for runtime: dotnet-isolated not found. Value cannot be null. (Parameter \'provider\')

所以我的问题是,无论我做什么,在切换到dotnet-isolated 后,当我尝试在我的开发笔记本电脑上(在我的 Mac 和我的 Windows 笔记本电脑上)运行我的启动功能时,我都会遇到同样的两种错误(它在 Azure 门户上运行良好)。

看着第二个错误,我真的很困惑为什么我会看到“WebJobs”命名空间——据我所知,新的 dotnet-isolated 的一部分是完全脱离 WebJobs 的东西......

  • AzureWebJobsStorage 的存储连接字符串值是否正确?
  • 我当前的设置如下所示 - 在安装 Azure Functions Core Tools v4 之前使用:\"Values\": { \"AzureWebJobsStorage\": \"UseDevelopmentStorage=true\", \"AzureWebJobsSecretStorageType\": \"files\", \"FUNCTIONS_WORKER_RUNTIME\": \"dotnet-isolated\",
  • 将值更改为真正的天蓝色存储连接字符串是否有效?
  • 在我的 host.json 中,我包含以下内容:\"extensionBundle\": { \"id\": \"Microsoft.Azure.Functions.ExtensionBundle\", \"version\": \"[3.3.0, 4.0.0)\" }, 这不是一个好主意 - 删除它后,我的功能启动时没有任何问题。 (您包含哪个版本的扩展并不重要 - 当您运行 dotnet-isolated 时,它只会阻塞所有内容!!)
  • 是的,独立函数不应该在 host.json 中使用扩展包。

标签: azure-functions .net-6.0 dotnet-isolated


【解决方案1】:

删除我的 host.json 中的 extensionBundle 部分解决了这个问题。

删除后,我的 func start --csharp 在命令行、Rider 和 Visual Studio 中运行良好。

【讨论】:

    猜你喜欢
    • 2022-11-09
    • 2021-09-06
    • 1970-01-01
    • 2021-11-05
    • 1970-01-01
    • 2022-07-26
    • 2022-11-01
    • 2021-08-11
    • 1970-01-01
    相关资源
    最近更新 更多