遇到断点时执行代码?

时间:2013-04-22 16:28:06

标签: c# visual-studio-2012

在立即窗口中,我可以执行一行代码。我还可以在特定点设置断点,以便在命中断点时程序停止,我可以在立即窗口中运行我的代码行。有没有办法(包括扩展名)自动执行此操作?

2 个答案:

答案 0 :(得分:17)

或多或少。您可以右键单击任何断点并选择“操作...”(VS 2017,旧版本阅读)

唯一的选择就是打印一条消息,这通常就足够了,但你可以在那里运行任意代码。例如:{Console.WriteLine("Hello World")}

Screenshot of Visual Studio 2017 Actions breakpoint

在旧版本的Visual Studio中,右键单击并选择“When Hit ...”时可以使用该选项:

Screenshot of Visual Studio When-Hit breakpoint

这将输出:

  

Hello World
  已经评估了表达式并且没有值

这意味着您可以调用任意方法。任何其他副作用将进入您正在运行的应用程序。我有时会使用它来暂时修补代码问题,而无需重新启动64位应用程序。

请记住,与普通程序执行相比,这个速度非常慢。

答案 1 :(得分:1)

Visual Studio 2017的答案类似于Thorarin的答案,但某些UI组件已更改。

在Visual Studio 2017中,您要查找的菜单项是“操作”。

右键单击断点,然后选择“操作”,然后将要执行的代码放在“将消息记录到输出窗口”字段的括号{ .. code to execute .. }中。