You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

本地调试Azure Functions遇宿主启动失败及函数未找到问题

解决".NET Isolated函数未找到"及"Host未启动"问题

一、核对工具链版本匹配性

  • 确认Azure Functions Core Tools版本:.NET 7 Isolated函数必须用v4.x版本,且要和VS 17.5 Preview 6兼容。卸载旧版本后,安装对应版本的Core Tools(预览版VS建议搭配预览版Core Tools)。
  • 检查.NET SDK版本:运行dotnet --list-sdks,确保本地安装了**.NET 7 SDK正式版或兼容的预览版**,没有的话直接安装对应版本。

二、修正项目配置

  • 检查local.settings.json:
    • 确保FUNCTIONS_WORKER_RUNTIME值严格为dotnet-isolated,别写成dotnet。
    • 确认AzureWebJobsStorage配置:用Azurite就设为UseDevelopmentStorage=true;用远程存储就填正确的连接字符串。
  • 检查项目文件(.csproj):
    • 确认<TargetFramework>是net7.0。
    • 必须包含<OutputType>Exe</OutputType>——Isolated模式是控制台应用,不是类库。
    • 核对NuGet包版本:Microsoft.Azure.Functions.Worker和Microsoft.Azure.Functions.Worker.Sdk版本要完全一致,且适配.NET 7,避免版本冲突。

三、修复Azurite运行问题

  • 重装Azurite:在VS扩展管理里找到Azurite,卸载后重启VS再重新安装。
  • 手动启动排查:打开终端运行azurite,看是否有端口占用错误(10000/10001/10002端口常被占用),有就杀掉占用进程或者修改Azurite端口配置。
  • 临时绕过Azurite:改用远程Azure存储的连接字符串测试,排除Azurite本身的问题。

四、VS预览版特殊处理

  • 重置VS设置:打开工具->导入和导出设置->重置所有设置,解决预览版的配置冲突。
  • 升级VS预览版:17.5 Preview 6可能存在已知bug,检查是否有更新的预览版本,升级后再测试。
  • 清理缓存:删除项目的bin、obj文件夹,运行dotnet nuget locals all --clear清理NuGet缓存,然后重新生成项目。

五、调试排查细节

  • 查看宿主日志:在VS输出窗口切换到Azure Functions日志,看具体错误堆栈,比如是否有Service Bus连接字符串错误、依赖项加载失败等。
  • 手动启动函数:终端进入项目目录,运行func start --dotnet-isolated,控制台输出的错误信息比VS提示更详细,能定位核心问题。

内容的提问来源于stack exchange,提问作者Enrico

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 01:46:18