Visual Studio 2019在Azure Functions本地调试模式下未进入断点

Pau*_*ley 6 visual-studio azure-functions

我无意中对VS2019进行了设置更改,但无法恢复原状。我正在调试Azure Functions项目,没有任何问题。我试图将项目设置为使用XUnit来测试功能并设置适当的启动项目。我无法让azure函数项目达到调试断点。最后我放弃了并决定使用两个VS2019实例,但现在我无法在Azure Function应用程序中遇到任何断点。我还注意到当您在Visual Studio中单击“停止”时,在您运行应用程序时启动的命令提示符窗口并未关闭。我看到一个SO问题要检查:

Use Managed Compatibility Mode.//should be Unchecked
Run Code Online (Sandbox Code Playgroud)

并未经检查的是。关于什么设置不正确的任何想法?

Bob*_*les 12

TLDR:取消选中下图中的“自动关闭...”选项。

我在Azure Function项目中遇到了相同的问题,并找到了解决方案。症状:

  • 断点没有被击中(VS静默忽略)
  • 在调试过程中添加一个断点会给出一个白色断点,并且出现“不会击中该断点...”的消息

原因是模块未加载。可以通过在调试过程中打开VS中的“模块”窗口(ctrl + alt + U,或在右上角搜索)来确认。这个窗口对我来说是空的(例如,如果我正在调试控制台应用程序,则充满参考)。

为了使模块加载正常工作,我必须取消选中调试选项“调试停止时自动关闭控制台”。突然间,我的模块窗口在调试过程中充满了,并且断点正常工作。

在此处输入图片说明

  • 在新版本的VS中可能是一个错误。我在最新一期中对此问题-VS 2019 16.2.4。现在正在``调查中''(自2019年7月30日起在developercommunity.visualstudio.com上)(https://developercommunity.visualstudio.com/content/problem/665957/azure-functions-projects-never-hit-breakpoints-whe。 html) (2认同)
  • 这仍然是一个问题。我只需在 VS2019 16.3.9 中对 HTTP 触发器 Azure 函数进行此更改 (2认同)
  • 不,我有这个问题 2020 年 3 月,VS 2019 16.4.5 (2认同)
  • 这仍然是 Visual Studio 2022 中 webjobs sdk 的问题。在我的例子中,它是一个 net6 webjob 控制台应用程序,无法命中断点来挽救它的生命,直到我取消选中该框,它终于再次开始工作。 (2认同)