JetBrains Rider 2025.2 Help

调试窗口

当您 启动调试器会话时, 调试 工具窗口会打开。 使用此窗口 控制调试器会话查看和分析程序数据 (帧、线程、变量等),并执行调试器操作。

默认情况下,当程序遇到断点时, 调试 工具窗口会打开,并且在会话终止时不会隐藏。 要更改此行为,请转到 生成、执行、部署 | 调试器 设置页面  Ctrl+Alt+S 并取消选中 在断点时显示调试窗口 复选框。

JetBrains Rider:调试窗口

会话

如果您同时运行多个调试会话,它们会在 调试 工具窗口顶部的选项卡中分开。

调试窗口中的会话选项卡

如果您为特定的运行/调试配置 启用了服务工具窗口 ,那么当您调试这些配置时,调试工具窗口的整个视图将显示在服务工具窗口中。

服务窗口中的调试窗口

编辑器中的所有信息,例如 内联变量值和执行点,都会显示在选定的会话选项卡中。 如果您并行运行多个使用相同代码的调试会话,这一点很重要。

当您关闭一个选项卡时,相应的调试会话会终止。

标签页

调试 工具窗口为每个会话显示以下选项卡:

  • 控制台:显示程序输出。

    对于本地会话,该选项卡的工作方式与在没有连接调试器的情况下运行程序时相同。

    当您附加到进程时,程序输出不会被重定向,调试器控制台中只会显示调试器输出。

  • 调试输出:显示您的应用程序发送到调试输出的消息,例如使用 Debug.WriteLine() 方法。

  • 并行堆栈 :在图表上显示线程及其堆栈帧。

  • 调试器:允许您探索挂起程序当前执行点的对象状态。

    该选项卡分为以下窗格:

    • 线程位于左侧,允许您选择要检查的线程及其帧之一。

    • 变量 :显示选定帧范围内的局部变量。 默认情况下, 监视与变量集成在一起,但您可以通过单击 在变量选项卡中显示监视 将监视显示在单独的窗格中。

  • 内存 :提供当前堆上的对象信息,用于监控其数量和生命周期。

切换选项卡

  • 要在工具窗口选项卡中循环切换,请按 Alt+RightAlt+Left

显示/隐藏标签

  • 点击 布局选项按钮 并选择您想要查看的选项卡。

恢复默认布局

如果您更改了 调试 工具窗口的布局,而不喜欢新的排列方式,您可以将其恢复到默认状态。

  • 点击 布局选项按钮 ,位于 调试 工具窗口的右上角,然后点击 恢复默认布局

调试工具栏

无论选择了哪个标签页,您始终可以在窗口左侧使用以下工具栏控件:

条目

工具提示和快捷键

描述

重新启动

重新运行

Ctrl+F5

点击此按钮以停止当前应用程序并再次运行。

恢复

恢复程序

F9

当应用程序暂停时,点击此按钮以恢复程序执行。

暂停

暂停程序

Ctrl+Pause

点击此按钮以暂停程序执行。

停止

停止

Ctrl+F2

单击此按钮以终止当前进程。

查看断点

查看断点

Ctrl+Shift+F8

点击此按钮打开 断点 对话框,您可以在其中配置断点行为。

静音断点

忽略断点

使用此按钮切换断点状态。

您可以暂时静音项目中的所有断点,以便在不停止于断点的情况下执行程序。

显示选项菜单

调试器设置

打开包含以下选项的菜单:

  • 在预览标签页中打开文件 :选择此选项 在选择相应帧时在预览标签页中打开文件

  • 在编辑器中显示变量值 :选择此选项以启用 内联调试功能,该功能允许在编辑器中直接在变量使用位置旁边查看其值。

  • 按字母顺序对变量进行排序 :选择此选项以按字母顺序对 变量窗格中的值进行排序。

  • 在会话完成时取消忽略断点 :选择此选项以在调试会话结束后重新启用所有已禁用的断点。

固定标签页

点击此按钮以固定或取消固定当前选项卡。 当窗口中的标签页达到最大数量时,您可能需要将一个标签页固定,防止其自动关闭。

条目

工具提示和快捷键

描述

重新启动

重新运行

Ctrl+F5

点击此按钮以停止当前应用程序并再次运行。

恢复

恢复程序

F9

当应用程序暂停时,点击此按钮以恢复程序执行。

暂停

暂停程序

Ctrl+Pause

点击此按钮以暂停程序执行。

停止

停止

Ctrl+F2

单击此按钮以终止当前进程。

查看断点

查看断点

Ctrl+Shift+F8

点击此按钮打开 断点 对话框,您可以在其中配置断点行为。

静音断点

忽略断点

使用此按钮切换断点状态。

您可以暂时静音项目中的所有断点,以便在不停止于断点的情况下执行程序。

显示选项菜单

设置

点击此按钮打开包含以下选项的菜单:

  • 内联显示值 :选择此选项以启用 内联调试功能,该功能允许在编辑器中直接在变量使用位置旁边查看其值。

  • 按字母顺序排序值 :选择此选项以按字母顺序对 变量窗格中的值进行排序。

  • 在会话完成时取消忽略断点 :选择此选项以在调试会话结束后重新启用所有已禁用的断点。

固定标签页

点击此按钮以固定或取消固定当前选项卡。 当窗口中的标签页达到最大数量时,您可能需要将一个标签页固定,防止其自动关闭。

单步执行工具栏

条目

工具提示和快捷键

描述

显示执行点

显示执行点

Alt+F10

点击此按钮以突出显示编辑器中的当前执行点,并在 窗口 窗格中显示相应的堆栈帧。

跳到光标

跳到光标

Ctrl+Alt+Shift+F9

与其运行程序直到目标语句,您可能希望跳过一部分代码而不实际执行它(例如,避免已知的错误或不重复某些例行操作)。 您可以使用 跳到光标 跳到光标 命令 Ctrl+Alt+Shift+F9 实现这一点,该命令也可在 运行 菜单和 调试窗口 中使用。

您还可以通过用鼠标拖动执行指针 执行指针 并将其放到目标行来跳过程序的一部分:

JetBrains Rider:拖动执行指针

您还可以将鼠标悬停在目标语句上,然后选择相应的操作:

JetBrains Rider 调试器:使用悬停操作设置下一条语句

跳到另一条语句时,请记住以下几点:

  • 旧的执行点和新的执行点之间的语句不会被执行。

  • 您可以跳回到已经执行过的语句。 在这种情况下,已经执行的语句不会被撤销。

  • 无法将下一条语句设置为另一个函数中的语句。

逐步跳过

步过

F8

点击此按钮以执行程序,直到当前方法或文件中的下一行,跳过当前执行点引用的方法(如果有)。 如果当前行是方法中的最后一行,执行步骤将跳转到该方法之后执行的行。

强制步过

强制步过

Alt+Shift+F8

单击此按钮,即使方法内部有断点,调试器也会跳过该方法。

逐步进入

步入

F7

点击此按钮以使调试器进入当前执行点调用的方法。

调试器会将执行指针设置为当前行中调用的第一个函数的第一条语句。 如果没有调用函数,调试器将跳到下一条语句。

默认情况下,JetBrains Rider 启用 外部源调试 ,这意味着当您进入库代码时,它会被自动反编译,调试器会将执行点移动到那里。

如果您希望调试器忽略库代码,可以禁用外部源调试——在 JetBrains Rider 设置 的 生成、执行、部署 | 调试器 页面 Ctrl+Alt+S 中清除 启用外部源调试

智能逐步进入

智能步入

Shift+F7

如果当前行包含多个嵌套调用,JetBrains Rider 允许您选择一个调用进入。 请考虑以下代码行:

Console.WriteLine(Foo(Bar("input") + Baz("input")));

该行包含多个调用,如果您使用 步入 ,调试器将首先进入 Bar() 的实现,然后进入 Baz() 的实现,依此类推。

如果您希望选择要进入的调用,例如 Bar() ,您可以使用 智能步入 智能步入 Shift+F7

JetBrains Rider:智能步入 - 进入选定调用

当您选择要单步进入的函数时,调试器会将执行指针设置为所选函数的第一条语句。

选择器还会显示哪些调用已经执行,并允许您再次执行这些调用。

当您在包含多个方法调用的行中调用 步入 F7 时,可以启用“智能单步进入”行为。 为此,请在 构建、执行、部署 | 调试器 | 单步调试 设置页面 Ctrl+Alt+S 中选择 始终使用智能步入

逐步退出

步出

Shift+F8

点击此按钮可使调试器退出当前方法,并跳至其后执行的行。

运行到光标处

运行到光标处

Alt+F9

点击此按钮以恢复程序执行,并在执行点到达编辑器中当前光标位置的行时暂停。 不需要断点。 实际上,在光标处为当前行设置了一个临时断点,一旦程序执行暂停,该断点就会被移除。 因此,如果文本光标位于已执行的行,程序将只是恢复执行,因为无法回滚到先前的断点。 此操作在您深入方法序列且需要一次退出多个方法时特别有用。

如果在应该执行的行上设置了断点,在到达指定行之前,调试器会在遇到的第一个断点处暂停。

您还可以将鼠标悬停在目标语句上,然后选择相应的操作:

JetBrains Rider 调试器:通过悬停操作运行至光标

强制运行到光标

不间断运行到光标处

Ctrl+Alt+F9

如果当前执行点和目标语句之间有断点,您可以使用 不间断运行到光标处 不间断运行到光标处 命令 Ctrl+Alt+F9 强制调试器跳过这些断点。

对表达式求值

对表达式求值

Alt+F8

单击此按钮以 计算表达式

条目

工具提示和快捷键

描述

显示执行点

显示执行点

Alt+F10

点击此按钮以突出显示编辑器中的当前执行点,并在 窗口 窗格中显示相应的堆栈帧。

跳到光标

跳到光标

Ctrl+Alt+Shift+F9

与其运行程序直到目标语句,您可能希望跳过一部分代码而不实际执行它(例如,避免已知的错误或不重复某些例行操作)。 您可以使用 跳到光标 跳到光标 命令 Ctrl+Alt+Shift+F9 实现这一点,该命令也可在 运行 菜单和 调试窗口 中使用。

您还可以通过鼠标拖动执行指针 执行指针 并将其放到目标行来跳过程序的一部分:

JetBrains Rider:拖动执行指针

您还可以将鼠标悬停在目标语句上,然后选择相应的操作:

JetBrains Rider 调试器:使用悬停操作设置下一条语句

跳到另一条语句时,请记住以下几点:

  • 旧的执行点和新的执行点之间的语句不会被执行。

  • 您可以跳回到已经执行过的语句。 在这种情况下,已经执行的语句不会被撤销。

  • 无法在另一个函数中设置下一条语句。

逐步跳过

步过

F8

点击此按钮以执行程序,直到当前方法或文件中的下一行,跳过当前执行点引用的方法(如果有)。 如果当前行是方法中的最后一行,执行步骤将跳转到该方法之后执行的行。

强制步过

强制步过

Alt+Shift+F8

单击此按钮,即使方法内部有断点,调试器也会跳过该方法。

逐步进入

步入

F7

点击此按钮以使调试器进入当前执行点调用的方法。

调试器会将执行指针设置为当前行中调用的第一个函数的第一条语句。 如果没有调用函数,调试器将跳到下一条语句。

默认情况下,JetBrains Rider 启用 外部源调试 ,这意味着当您进入库代码时,它会自动被反编译,调试器会将执行点移动到那里。

如果您希望调试器忽略库代码,可以禁用外部源调试——在 JetBrains Rider 设置 的 生成、执行、部署 | 调试器 页面 Ctrl+Alt+S 中清除 启用外部源调试

智能逐步进入

智能步入

Shift+F7

如果当前行包含多个嵌套调用,JetBrains Rider 允许您选择一个调用进入。 请考虑以下代码行:

Console.WriteLine(Foo(Bar("input") + Baz("input")));

该行包含多个调用,如果您使用 步入 ,调试器将首先进入 Bar() 的实现,然后进入 Baz() 的实现,依此类推。

如果您希望选择要进入的调用,例如 Bar() ,您可以使用 智能步入 智能步入 Shift+F7

JetBrains Rider:智能进入 - 进入选定的调用

当您选择要单步进入的函数时,调试器会将执行指针设置为所选函数的第一条语句。

选择器还会显示哪些调用已经被执行,并允许您再次执行这些调用。

当您在包含多个方法调用的行中调用 步入 F7 时,可以启用“智能单步进入”行为。 为此,请在 构建、执行、部署 | 调试器 | 单步调试 设置页面 Ctrl+Alt+S 中选择 始终使用智能步入

逐步退出

步出

Shift+F8

点击此按钮可使调试器退出当前方法,并跳至其后执行的行。

运行到光标处

运行到光标处

Alt+F9

点击此按钮以继续程序执行,并暂停直到执行点到达编辑器中当前光标位置的行。 不需要断点。 实际上,在光标处为当前行设置了一个临时断点,一旦程序执行暂停,该断点就会被移除。 因此,如果文本光标位于已执行的行,程序将只是恢复执行,因为无法回滚到先前的断点。 此操作在您深入方法序列且需要一次退出多个方法时特别有用。

如果在应该执行的行上设置了断点,在到达指定行之前,调试器会在遇到的第一个断点处暂停。

您还可以将鼠标悬停在目标语句上,然后选择相应的操作:

JetBrains Rider 调试器:使用悬停操作运行到光标处

强制运行到光标

不间断运行到光标处

Ctrl+Alt+F9

如果当前执行点和目标语句之间有断点,您可以使用 不间断运行到光标处 不间断运行到光标处 命令 Ctrl+Alt+F9 强制调试器跳过这些断点。

对表达式求值

对表达式求值

Alt+F8

单击此按钮以 计算表达式

最后修改日期: 2025年 9月 26日