无法在 Visual Studio Code 中调试 Azure Functions。调试器停止

Unk*_*own 6 azure visual-studio-debugging visual-studio-code azure-functions

我正在使用 http 触发器 Azure 函数。当我运行应用程序时(按F5),单击 后http://localhost:7071/api/HttpTrigger1,我在浏览器中收到响应,但代码不会在断点处停止。

经过仔细观察,我看到调试器启动了0.5秒,然后自动关闭。

我已将视频发布在这里。在第 5 秒,我们可以看到调试器启动但立即关闭(第 5 秒为橙色屏幕)。

Stackoverflow 上有一个类似的问题,但这并没有解决我的问题。

小智 2

在 Visual Studio Code 中运行/调试 Azure Functions 的先决条件:

  1. Azure 工具扩展

  2. Azure Functions 核心工具

  3. 另外,请确保您的系统上安装了存储模拟器,即使它已被弃用,但仍用于本地环境调试和测试目的

  4. VS Code 扩展菜单上的Azurite 扩展


本地.settings.json

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

.csproj 文件:

<Project  Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<AzureFunctionsVersion>v4</AzureFunctionsVersion>
</PropertyGroup>
<ItemGroup>
<PackageReference  Include="Microsoft.NET.Sdk.Functions"  Version="4.0.1"  />
</ItemGroup>
<ItemGroup>
<None  Update="host.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None  Update="local.settings.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<CopyToPublishDirectory>Never</CopyToPublishDirectory>
</None>
</ItemGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)

调试结果:

在此输入图像描述

在运行方法内的某些代码行处放置断点并开始调试。

所有代码文件和调试视频都可以在GitHub 存储库调试视频中找到,请将每个文件与您的代码进行比较。


如VS Code 官方文档中所述,需要安装语言运行时扩展以进行调试,例如C# for .NET、Python、Java、JavaScript、PowerShell等。

例如,对于上面的.NETAzure Functions 项目,我在 VS Code 中安装了此扩展:

VS 代码扩展

安装这些扩展的链接在先决条件和超链接措辞格式中给出。

VS Code调试Azure Functions的参考:

  1. 在 VS Code 中本地调试 Azure Functions
  2. 在 VS Code 中调试 Azure Functions 的 Microsoft 官方文档