Visual Studio忽略断点

时间:2014-11-13 14:08:03

标签: visual-studio asp.net-web-api

Visual Studio忽略了我的断点。我不知道它是否有所作为,但这是在Web API中发生的。我知道它已经传递了我的代码,因为我可以将Console.WriteLine('FOO');放入其中并显示出来。但它超越了我的断点,就像他们甚至没有。我添加了System.Diagnostics.Debugger.Break();,即使我以管理员身份打开Visual Studio,也会给我这个对话框。

enter image description here

我直接启动Web API项目。也就是说,我没有启动使用Web API的项目,因此需要右键单击Solution>启动项目并设置Web API以启动。该项目处于调试模式。我已经清理了我的解决方案,重新启动了IIS,并关闭并重新打开了Visual Studio。

另外,我可以打开其他项目,比如ASP.NET MVC应用程序,断点在那里工作正常。它只是Web API。知道我做错了吗?

1 个答案:

答案 0 :(得分:0)

重新启动计算机。

我不知道究竟是什么原因,但在尝试了其他所有重新启动后,现在它可以正常工作。

另外,我不得不从另一个项目运行它。如果我调试Web API项目它没有达到断点,但如果我从Web UI项目调试(Web API是该解决方案的一部分),它就可以工作。

修改

实际上只有一次工作。我最终在启动项目中包含了Web API,并且还通过post build命令将dll和pdb复制到每个构建的c:\ mySymbols上复制c:\ path \ the.dll c:\ mySmbols \ the.dll然后再进行调试>选项>调试>符号并将c:\ mySymbols的路径添加到列表中。

修改

另一件事是我试图通过

使用自定义请求验证器
<httpRuntime requestValidationMode="4.5" executionTimeout="300" maxRequestLength="51200" requestValidationType="MyProj.App_Code.CustomRequestValidator" />

这肯定会破坏它。所以我不得不把它拿掉(至少在我解决这个问题之前)。

我不确定哪一个,如果这些东西中的任何一个做了诀窍,但它现在正在运作。