ASP.NET - 调试

调试可以让开发者看到代码如何一步步工作、变量的值如何变化、对象如何创建和销毁等。

首次执行该站点时,Visual Studio 会显示一条提示,询问是否应启用该站点进行调试:

调试信息

启用调试后,web.config 中会显示以下几行代码:

<system.web>
   <compilation debug="true">
      <assemblies>
      ..............
      </assemblies>
   </compilation>	
</system.web>

调试工具栏提供了所有可用于调试的工具:

调试工具栏

断点

断点指定运行时运行特定代码行,然后停止执行,以便可以检查代码并执行各种调试作业,例如,更改变量的值、单步执行代码、移入和移出函数和方法等。

要设置断点,请右键单击代码并选择插入断点。 左边距出现一个红点,并且该代码行突出显示,如下所示:

中断高亮显示

接下来,当您执行代码时,您可以观察其行为。

打破高亮显示2

在此阶段,您可以单步调试代码,观察执行流程并检查变量、属性、对象等的值。

您可以通过右键单击断点符号获得的"属性"菜单来修改断点的属性:

中断下拉菜单

位置对话框显示文件的位置、行号和所选代码的字符号。 条件菜单项允许您输入有效的表达式,当程序执行到达断点时将计算该表达式:

中断条件

Hit Count 菜单项会显示一个对话框,显示断点已执行的次数。

断点

单击下拉列表中显示的任何选项将打开一个编辑字段,在其中输入目标命中计数。 这对于分析代码中的循环结构特别有帮助。

断点2

"过滤器"菜单项允许设置过滤器来指定断点有效的机器、进程或线程或任何组合。

中断过滤器

"When Hit"菜单项允许您指定在遇到断点时要执行的操作。

断点3

调试窗口

Visual Studio 提供了以下调试窗口,每个窗口都显示一些程序信息。 下表列出了窗口:

窗口 描述
Immediate 显示变量和表达式。
Autos 显示当前和先前语句中的所有变量。
Locals 显示当前上下文中的所有变量。
Watch 最多显示四组不同的变量。
Call Stack 显示调用堆栈中的所有方法。
Threads 显示和控制线程。