您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > c#第12章 Web应用程序的调试和异常处理
第12章Web应用程序的调试和异常处理在开发Web应用程序过程中,出现错误是难免的。开发人员可以使用VisualStudio2010集成开发环境提供的调试器发现问题,然后将错误排除。但是对于一个已发布的产品,确保系统安全、稳定的运行对管理员来说是一个长期、沉重的任务。重要的一点是,没有办法去跟踪它的执行过程。但是,对于基于.NET的Web应用程序,是可以进行跟踪的。本章将介绍如何跟踪ASP.NET应用程序以及对异常的处理方法。12.1应用程序的跟踪在ASP.NET应用程序中,可以通过配置Web.config文件,对单个页面或整个Web应用程序的所有页面进行追踪。ASP.NET对跟踪应用程序的执行过程提供了很好的支持,Web应用程序的跟踪分为页面级跟踪和应用程序级跟踪。在本节中,将学习Web应用程序的跟踪方法。12.1.1什么是跟踪跟踪是ASP.NET引入的新功能,就是对Web应用程序中变量的值和代码执行情况进行底层了解。其分为页面级跟踪和应用程序级跟踪两种。要对Web应用程进行调试、要了解已经运行的应用程的工作情况、要知道应用程的特定行为等,都可以通过对Web应用程进行跟踪来实现。例如在服务器端,通过跟踪可以看到它所接受的请求,可以看到它的会话状态等。在ASP.NET中,有一个跟踪查看器,其对跟踪提供了很好的支持。下列是有关跟踪查看器的一些应用方面。12.1.2启用页面级跟踪要启用ASP.NET的页面级跟踪,可以使用Trace内部对象。在ASP.NET页面中,可以只对一个页面跟踪,也可以对整个应用程序中的所有页面跟踪。12.1.3启用应用程序级跟踪在默认情况下,ASP.NET应用程序只能进行本地应用程序级别的跟踪,而不能通过远程的方式查看服务器上运行的应用程状态。要启用远程服务器上的跟踪,可以在Web.config文件中,将trace节点的localOnly属性设置为false。12.2应用程序的调试在产品开发的过程中,通常会发生各种各样的错误,比如词法有误或逻辑错乱等。可以将这些错误归纳为两类,一是语法错误,另一类是逻辑错误。对于第一类错误,程序编译时即可发现,这是编译器带来的额外帮助。但对于另一类错误,则需要开发人员花费不可预知的精力去发现并排除。因此,在开发时应当尽可能多地发现潜在的错误,这主要通过反复调试程序来达到。ASP.NET为开发者提供了强大的调试支持,本节将介绍如何调试Web应用程序。12.2.1在Web.config中启动调试在Web项目中,通过配置Web.config文件可以启动调试,也可以禁用调试。若要启动调试,必须在项目属性页中启用ASP.NET调试器,同时必须在项目的Web.config文件中启用调试。Web.config文件是一个XML文件,使用任何标准的文本编辑器都可以打开。12.2.2Web.config文件常用配置Web.config是XML文件,其以层次结构的方式保存ASP.NET应用程序的配置信息。在Web.config文件中,所有的配置信息都保存在下列代码之间。01configuration02system.web03//存放配置信息的地方04/system.web05/configuration12.2.3代码级断点调试和WinForm窗体应用程序一样,Web应用程序也可以进行代码的断点调试。在调试Web项目之前,先按以下步骤启动调试器。12.3应用程序的错误处理当前版本的ASP.NET引入了一个新功能,使用户能在应用程序运行时跟踪并处理错误。当错误发生时,其允许使用定制的错误提示或跳到一个更为友好的提示页面上。因此,可以避免晦涩难懂的错误提示出现在用户面前。本节将介绍如何在Web应用程中进行错误处理。12.3.1什么是错误处理在程序设计中,错误处理是指在错误发生时处理程序得到通知并采取一定措施的过程。在Web应用中,常见的错误有如访问了一个不存在的页面或请求禁止访问的页面等。当这些错误发生时,可以重定向到事先定制好的页面中,或者也可以将错误信息作为HTTP响应回馈给浏览器。下例通过例子加深理解。12.3.2使用Page_Error事件进行错误处理在12.3.1节中,介绍了使用Web.config处理错误的方法。ASP.NET还提供了另外两方法:Page_Error事件和Application_Error事件。其中,Page_Error事件提供一种捕获在页级别出现的错误的方法。但Page_Error事件的处理程序只会对产生错误的具体页面有效,因此可以只是显示错误信息,也可以记录事件或执行其他的操作。下面举例说明如何响应Page_Error事件来处理发生于某一具体页面的错误。12.3.3用Web.config控制所有页面级错误在配置文件Web.config中,customErrors节可将所有的错误重定向页指定为默认页defaultRedirect.html,注意这个名称是可以更改的。或者根据HTTP错误状态码转到与之相应的页面,例如前面介绍的404错误。如果发生在应用程序以前的且得不到任何处理的错误,则显示默认页。12.3.4使用Application_Error控制应用程序级错误与Page_Error事件相类似,Application_Error事件也可以捕获发生在应用程序中的错误。由于事件发生在整个应用程序范围内,因此可记录应用程序的错误信息,或者处理其他可能发生的应用程序级别的错误。12.4小结本章学习了Web应用程序的跟踪、调试和错误处理。有助于在实际上的开发中排除程序错误。同时也加强了读者们程序安全性方面的训练。在本章的基础上,结合第7章的内容,读者可以对C#应用程序的调试和错误处理有了综合的认识。接下来,将学习Web应用程序的配置和部署。
本文标题:c#第12章 Web应用程序的调试和异常处理
链接地址:https://www.777doc.com/doc-3383259 .html