ASP.NET调试

调试允许开发人员逐步了解代码的工作过程,变量的值是如何变化的,如何创建和销毁对象等。
当网站第一次执行时,Visual Studio会显示一个提示,询问是否应该启用它来进行调试。

为了方便演示,这里创建一个ASP.NET空网站,并添加一个窗体文件:Default.aspx ,以及后端 Default.aspx.cs 文件。简单实现计算输入字符串的长度。

Default.aspx 文件的代码 -

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>用于演示调试代码</title>
</head>
<body>
    <form id="form1" runat="server">
        <div>

          输入字符串:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="计算长度" />
            <asp:Label ID="Label1" runat="server"></asp:Label>
        </div>
    </form>
</body>
</html>

Default.aspx.cs 文件的代码 -

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        String str = TextBox1.Text;
        String msg = "当前字符串长度为:"+(str.Length).ToString();
        Label1.Text = msg;
    }
}

可以在代码行的左侧点击右键插入断点,假设在代码的第17行设置了一个断点,如下 -

通过点主菜单中的【调试】->【开始调试】,来启用调试,如下所示 -

这里启动了网站页面,然后输入一个字符串,并点击提交 -

也可以通过在web.config中配置以下代码行:

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

调试工具栏提供了所有可用于调试的工具。和其它的IDE差不多,多次使用和练习就可以了。

断点

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

调试窗口

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

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

上一篇: ASP.NET错误管理 下一篇: ASP.NET LINQ