在立即窗口中,我可以执行一行代码。我还可以在特定点设置断点,以便在命中断点时程序停止,我可以在立即窗口中运行我的代码行。有没有办法(包括扩展名)自动执行此操作?
答案 0 :(得分:17)
或多或少。您可以右键单击任何断点并选择“操作...”(VS 2017,旧版本阅读)
唯一的选择就是打印一条消息,这通常就足够了,但你可以在那里运行任意代码。例如:{Console.WriteLine("Hello World")}
在旧版本的Visual Studio中,右键单击并选择“When Hit ...”时可以使用该选项:
这将输出:
Hello World
已经评估了表达式并且没有值
这意味着您可以调用任意方法。任何其他副作用将进入您正在运行的应用程序。我有时会使用它来暂时修补代码问题,而无需重新启动64位应用程序。
请记住,与普通程序执行相比,这个速度非常慢。
答案 1 :(得分:1)
Visual Studio 2017的答案类似于Thorarin的答案,但某些UI组件已更改。
在Visual Studio 2017中,您要查找的菜单项是“操作”。
右键单击断点,然后选择“操作”,然后将要执行的代码放在“将消息记录到输出窗口”字段的括号{ .. code to execute .. }
中。