演练:调试 Web 窗体

更新:2007 年 11 月

本主题适用于:

版本

Visual Basic

C#

C++

Web Developer

速成版

主题不适用 主题不适用 主题不适用 主题不适用

标准版

主题适用 主题适用 主题不适用 主题适用

专业团队版

主题适用 主题适用 主题不适用 主题适用

表格图例:

主题适用

适用

主题不适用

不适用

主题适用,但命令默认情况下隐藏

默认情况下隐藏的一条或多条命令。

本演练中的步骤向您演示如何调试 ASP.NET Web 应用程序(也称为 Web 窗体)。它还为您演示如何启动和停止执行、设置断点以及在“监视”窗口中检查变量。

说明:

若要完成本演练,您必须在服务器计算机上具有管理员特权。默认情况下,ASP.NET 进程(aspnet_wp.exe 或 w3wp.exe)作为 ASP.NET 进程运行。若要调试 ASP.NET,您必须在运行 ASP.NET 的计算机上具有管理员特权。有关更多信息,请参见 ASP.NET 调试:系统要求

显示的对话框和菜单命令可能会与帮助中描述的那些有所不同,具体取决于您现用的设置或版本。若要更改设置,请在“工具”菜单上选择“导入和导出设置”。有关更多信息,请参见 Visual Studio 设置

创建 Web 窗体

  1. 如果您已经打开了一个解决方案,请先关闭它。

  2. 在“文件”菜单上单击“新建”,再单击“网站”。

    “新建网站”对话框随即出现。

  3. 在“模板”窗格中,单击“ASP.NET 网站”。

  4. 在“位置”行上,在列表中单击“HTTP”,然后在文本框中键入 https://localhost/WebSite。

  5. 在“语言”列表中单击“Visual C#”或“Visual Basic”。

  6. 单击“确定”。

    Visual Studio 将创建一个新项目并显示默认的 HTML 源代码。它还将在 IIS 中的“默认网站”下面创建一个名为“网站”的新虚拟目录。

  7. 单击底部边距上的“设计”选项卡。

  8. 单击左边距上的“工具箱”选项卡,或在“视图”菜单上选择“工具箱”。

    随即打开“工具箱”。

  9. 在“工具箱”中单击“Button”控件,并将其添加到主设计图面 (Default.aspx) 上。

  10. 在“工具箱”中,单击“Textbox”控件,并将该控件拖到主设计图面 (Default.aspx) 上。

  11. 双击所放置的按钮 (Button) 控件。

    此操作将使您转到代码页:Default.aspx.cs(对于 C#)或 Default.aspx.vb(对于 Visual Basic)。光标应位于函数 Button1_Click 中。

  12. 在 Button1_Click 函数中,添加以下代码:

    ' Visual Basic
    TextBox1.Text = "Button was clicked!"
    
    // C#
    TextBox1.Text = "Button was clicked!";
    
  13. 在“生成”菜单上单击“生成解决方案”。

    该项目应顺利生成,没有错误。

    现在,您可以开始调试了。

调试 Web 窗体

  1. 在 Default.aspx.cs 或 Default.aspx.vb 窗口中,单击所添加文本的同一行的左侧空白:

    ' Visual Basic
    TextBox1.Text = "Button was clicked!"
    
    // C#
    textBox1.Text = "Button was clicked!";
    

    出现一个红点并且该行上的文本突出显示为红色。红点表示一个断点。当您在调试器下运行该应用程序时,此调试器将在命中该代码时在该位置中断执行。然后您可以查看应用程序的状态并调试它。有关更多信息,请参见断点

  2. 在“调试”菜单上单击“启动调试”。

  3. 即会显示“未启用调试”对话框。选择“添加新的启用了调试的 Web.config 文件”选项,再单击“确定”。

    Internet Explorer 即启动并显示您刚设计的页。

  4. 在 Internet Explorer 中,单击此按钮。

    在 Visual Studio 中,此操作将带您转到代码页 Default.aspx.cs 或 Default.aspx.vb 上设置了断点的行上。该行将用黄色突出显示。现在,可以查看应用程序中的变量并控制其执行。应用程序停止执行并等待您的命令。

  5. 在“调试”菜单上,单击“窗口”,再单击“监视”,然后单击“监视 1”。

  6. 在“监视”窗口中,键入 TextBox1.Text。

    “监视”窗口将显示变量 TextBox1.Text 的值:

    ""
    
  7. 在“调试”菜单上单击“逐过程”。

    TextBox1.Text 的值在“监视”窗口中更改为:

    "Button was clicked!"
    
  8. 在“调试”菜单上单击“继续”。

  9. 在 Internet Explorer 中,再次单击此按钮。

    执行再次在断点处停止。

  10. 在 Default.aspx.cs 或 Default.aspx.vb 窗口中,单击左空白中的红点。

    这将移除该断点。

  11. 在“调试”菜单上单击“停止调试”。

附加到 Web 窗体以进行调试

  1. 在 Visual Studio 中,可以将调试器附加到正在运行的进程上。若要获得最佳调试效果,请将可执行文件编译为符号 (PDB) 文件的调试版本。

  2. 在 Default.aspx.cs 或 Default.aspx.vb 窗口中,在左边距中单击以再次在所添加的行上设置断点:

    ' Visual Basic
    TextBox1.Text = "Button was clicked!"
    
    // C#
    textBox1.Text = "Button was clicked!";
    
  3. 在“调试”菜单上单击“开始执行(不调试)”。

    Web 窗体将开始在 Internet Explorer 下运行,但未附加调试器。

  4. 附加到 ASP.NET 进程。有关更多信息,请参见调试已部署的 Web 应用程序和 Web 服务

  5. 在 Internet Explorer 中,单击窗体上的按钮。

    在 Visual Studio 中,应当命中 Default.aspx.cs、Default.aspx.vb 或 Default.aspx 中的断点。

  6. 完成调试后,在“调试”菜单上,单击“停止调试”。

请参见

其他资源

调试 ASP.NET 和 AJAX 应用程序