Microsoft Visual Studio 2012无法在c#文件中设置断点

我安装了Microsoft Visual Studio Professional 2012,版本11.0.60610.01更新3。

调试ac#(。cs)文件时,当我尝试设置断点时,Visual Studio会给出以下消息:

“无法在此位置插入断点”。

即使在尝试将其设置在方法中的某一行上时,我也会收到此消息。 但是在Visual Basic应用程序的.vb文件中,我可以设置断点。

我想知道是否有人有任何建议来解决这个问题,或者我是否需要重新安装Visual Studio。

谢谢

也许我对这个问题来说太迟了但是无论如何它仍然存在,

  1. BUILD>清洁解决方案
  2. BUILD>构建解决方案

我遇到了类似的问题,我通过退出Visual Studio并从我的解决方案文件夹中删除.suo文件来解决它。

再次打开项目时会重新创建此文件,删除它是没有害处的。

.suo用于存储解决方案的布局,您设置的断点,打开的选项卡等。 我不确定为什么会这样,但我的逻辑是Visual Studio认为我试图在与我实际放置它的位置不同的位置放置一个断点。

我终于能够找到解决方案了。 我必须通过控制面板 – >程序和function,右键单击Microsoft Visual Studio Professional 2012,然后选择更改,对我的Visual Studio 2012实例进行修复。 在Visual Studio窗口中,我选择了修复。

作为修复过程的一部分,我还必须下载位于此处的Web部署: http : //www.microsoft.com/en-us/download/details.aspx?id = 4148并将可视工作室修复过程指向。 msi文件,它说它无法找到Web部署包,无法从互联网上下载。

我还必须实现以下stackoverflow问题中指示的修复: Visual Studio 2012中的Plain C#Editor(没有intellisense,没有缩进,没有代码突出显示)

现在我能够按预期调试应用程序。

嗯,谢谢……对于像我这样愚蠢的人来说,还有一件事需要考虑:

您可以在方法的开始或结束时在大括号上放置断点,并且可以在正在执行某些操作的任何行上放置断点(例如,分配值或调用方法)。 但是,您不能在仅声明变量或“无所事事”的行上放置断点。

我有一个方法:

 public IEnumerable GetList() { int distance; var otherVar = SomeValue; } 

我试图将断点放在int distance;的第一行int distance; ,这在其他IDE中运行良好,但在VS中不起作用。 为了得到断点,我不得不通过赋值进入大括号或下一行到下一行。

我浪费了5分钟,我永远不会回来,试图调试非问题;-p

VS 2017我有这个,我错过了; 在for循环中

如果没有指令要在一行上执行,VS拒绝设置断点,没有理由。 例如

 string str; //Cannot set breakpoint string str = ""; //Can set breakpoint