如何:为 ASP.NET 应用程序启用调试

若要启用调试,必须在**“项目属性”**页和应用程序的 web.config 文件中都启用调试。

备注

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

在项目属性中启用 ASP.NET 调试 (Visual Basic/C#)

  1. 解决方案资源管理器,右击 Web 项目名称并选择 属性

  2. 在项目属性页上 网站 选项。

  3. 在**“调试器”之下选中“ASP.NET”**复选框。

在 web.config 文件中启用调试

  1. 使用任何标准文本编辑器或 XML 分析器打开 web.config 文件。

    备注

    但是,您不能使用 Web 浏览器对该文件进行远程访问。出于安全考虑,ASP.NET 将 Microsoft IIS 配置为帮助防止浏览器直接访问 Web.config 文件。如果您尝试使用浏览器访问配置文件,将收到 HTTP 访问错误 403(已禁止)。

  2. Web.config 是 XML 文件,因此它包含由标记标出的嵌套节。 定位到 configuration/system.web/compilation 元素。 如果生成元素不存在,请创建它。

  3. 如果 compilation 元素不包含一 debug 属性,请将特性添加到元素中。

  4. 确定 debug 属性的值设置为 true。

web.config 文件应类似于以下示例。 请注意可能需要对该配置和 system.web 元素之间的部分

  • 在配置和 system.web 元素之间的元素部分

  • 在 system.web 和编译组件之间的元素部分

  • 生成元素可以包含其他特性和元素

示例

<configuration>
    ...
    <system.web>
        <compilation
            debug="true"
            ...
        >
        ...
        </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/cccwww.microsoft.com/aaa/ddd 等位置中的所有 ASP.NET 应用程序都将继续该设置。 唯一的例外情况是其中一个应用程序通过自己的较低级的 Web.config 文件重写设置。

启用调试模式将极大地影响 ASP.NET 应用程序的性能。 请记住,在部署发布版本的应用程序或进行性能度量之前要禁用调试模式。

请参见

其他资源

调试 ASP.NET 和 AJAX 应用程序