更新:2007 年 11 月
本主题适用于:
| 版本 | Visual Basic | C# | C++ | Web Developer | 
|---|---|---|---|---|
| 速成版 | .gif) | .gif) | .gif) | .gif) | 
| 标准版 | .gif) | .gif) | .gif) | .gif) | 
| 专业团队版 | .gif) | .gif) | .gif) | .gif) | 
表格图例:
| .gif) | 适用 | 
| .gif) | 不适用 | 
| .gif) | 默认情况下隐藏的一条或多条命令。 | 
若要启用调试,必须在“项目属性”页和应用程序的 web.config 文件中都启用调试。
| .gif) 说明: | 
|---|
| 显示的对话框和菜单命令可能会与“帮助”中的描述不同,具体取决于您的当前设置或版本。若要更改设置,请在“工具”菜单上选择“导入和导出设置”。有关更多信息,请参见 Visual Studio 设置。 | 
在项目属性中启用 ASP.NET 调试 (Visual Basic/C#)
- 在“解决方案资源管理器”中右击 Web 项目的名称,然后选择“属性页”。 - 将显示“<项目> 属性页”。 
- 单击“Web”选项卡。 
- 在“调试器”之下选中“ASP.NET”复选框。 
在 web.config 文件中启用调试
- 使用任何标准文本编辑器或 XML 分析器打开 web.config 文件。 - 但是,您不能使用 Web 浏览器对该文件进行远程访问。出于安全考虑,ASP.NET 将 Microsoft IIS 配置为帮助防止浏览器直接访问 Web.config 文件。如果您尝试使用浏览器访问配置文件,将收到 HTTP 访问错误 403(已禁止)。
 
- Web.config 是 XML 文件,因此它包含由标记标出的嵌套节。下面的示例显示了一个典型的 Web.config 文件。请按照下列步骤修改该文件: - 找到 <compilation> 标记。它标记 <compilation> 节的开始。 
- 在 <compilation> 标记内部,将创建调试属性。在下面的示例中,debug 是 <compilation> 标记中指定的第二个属性,但顺序并不重要。 
- 属性是区分大小写的,因此请确保指定的是“debug”,而不是“Debug”或“DEBUG”。 
- 将 debug 设置为 true 属性,如下面的代码示例所示。 
 
- 如果没有将 debug 属性设置为 true 就尝试启动调试会话,将出现一个对话框,建议您创建设置了该属性的 web.config 文件。请接受它,并继续调试。 
示例
<configuration>
    <system.web>
        <compilation defaultLanguage="VB"
            debug="true"
            numRecompilesBeforeAppRestart="15">
            <compilers>
            <compiler language="VB;VBScript"
            extension=".cls"
            type="Microsoft.VisualBasic.VBCodeProvider,system, Version=1.0.5000.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089" />
            < compiler language="C#;Csharp"
                extension=".cs" 
                type="Microsoft.CSharp.CSharpCodeProvider,system, Version=1.0.5000.0,  Culture=neutral, PublicKeyToken=b77a5c561934e089" />
        </compilers>
        <assemblies>
""            <add assembly="ADODB" />
            <add assembly="*" />
            </assemblies>
            <namespaces>
            <add namespace="System.Web" />
            <add namespace="System.Web.UI" />
            <add namespace="System.Web.UI.WebControls" />
            <add namespace="System.Web.UI.HtmlControls" />
        </namespaces>
        </compilation>
    </system.web>
</configuration>
可靠编程
ASP.NET 将自动检测对 Web.config 文件所做的任何更改,并应用新的配置设置。不必重新启动计算机或 IIS 服务器,更改即可生效。
网站可以包含多个虚拟目录和子目录,Web.config 文件可能存在于每个目录中。ASP.NET 应用程序将继承位于 URL 路径中较高级别的 Web.config 文件中的设置。使用分层配置文件可以同时更改若干个 ASP.NET 应用程序的设置,例如更改层次结构中某个层次下面的所有应用程序的设置。但是,如果在层次结构中位于较低位置的文件中设置了 debug,则它将重写较高位置的文件中的值。
例如,可以在 www.microsoft.com/aaa/Web.config 中指定 debug="true",则 aaa 文件夹中或 aaa 的任何子文件夹中的所有应用程序都将继承该设置。因此,如果 ASP.NET 应用程序位于 www.microsoft.com/aaa/bbb,则它将继承该设置,同样,www.microsoft.com/aaa/ccc 和 www.microsoft.com/aaa/ddd 等位置中的所有 ASP.NET 应用程序都将继续该设置。唯一的例外情况是其中一个应用程序通过自己的较低级的 Web.config 文件重写设置。
启用调试模式将极大地影响 ASP.NET 应用程序的性能。请记住,在部署发布版本的应用程序或进行性能度量之前要禁用调试模式。