ASP.Net调试之三板斧:第二招

发表于:2007-06-30来源:作者:点击数: 标签:
导 读:关于在ASP.NET 中进行调试的方法,介绍了利用页面标识符来获得一些相关信息,并利用Trace 来跟踪变量。 -------------------------------------------------------------------------------- 作者:王恒斌 整理: .net 技术网(www.51dotnet.com) 上一
    
  
  导 读:关于在ASP.NET 中进行调试的方法,介绍了利用页面标识符来获得一些相关信息,并利用Trace 来跟踪变量。
  --------------------------------------------------------------------------------
  作者:王恒斌
  整理:.net技术网(www.51dotnet.com)
  
   上一次我们说到配置Config.web文件,让出错信息给出更多的提示。可光有
  提示又有什么用呢?“最多就是知道错在哪里,可我还是不会改呀!”别急,别
  急,看看咱们这篇文章叫什么来着,“三板斧”,那当然是一斧赛过一斧啦!上
  次那招不够厉害,我们还有下面的那,所以别急啊,且听我慢慢道来。
  
  第二招:Trace追踪
  
   用过ASP的人应该都用过下面的语句吧:
   Response.Write XXX
   Response.End
  
   虽然我不太喜欢ASP的编程方法,但是这种方便的调试手段还是很好的。换用
  ASP.Net以后,我发现ASP.Net提供一种更强大的调试方法,它就是我们现在要说
  的Trace。所谓Trace功能就是在网页的最前面加上一些标记,至于是什么标记呢?嘿嘿,我不能马上告诉你(不好,臭鸡蛋……哇!)。我是说,我要先介绍一点基础的知识啦!
  
   我不知道大家对ASP.Net的页面标示了解多少,为了下面讲解的方便,我还是
  概要的介绍一下吧!ASP.Net的页面标示指的是在每一个ASP.Net页面最上面,用
  <%@和%>括起来的语句。它的功能是用来确定在处理ASP.Net文件的时候,需要系
  统做一些什么特殊的设定。具体的语法如下:
  <%@ directive attribute=value %>
  其中:directive就是页面标示符;attribute是该标示符对应的一些属性。
  注意:在属性之间需要空格,而在"="之间不能有空格。
  ASP.Net现在包含以下7种标识
  @ Page,
  @ Control,
  @ Import,
  @ Registe,
  @ Assembly,
  @ OutputCache,
  @ Webservice
  
   我们用得最多的就是@ Page标示,而现在我要讲的Trace功能,也要用到@ Page。(关于这七个标示的具体应用,我会在以后发贴讲述的。)好了,回到我们的主题。要用Trace功能,你必须在页面的最上面加上:<%@ Page Trace="true" %> 这句话。加好后,你就可以看看页面的运行情况了。运行该页面。你会发现在页面的下半部分出现了一大堆的数据。下面就来解释一下这些数据的含义:
  Request Details:通过Request方式向浏览器所读取的数据;
  Trace Information:事件发生或程序执行的过程信息;
  Control Tree:网页所使用的控件及控件之间的阶层关系;
  Cookies Collection:网页所使用的Cookie信息;
  Headers Collection:浏览器的表头信息。
  Server Variables:Server变量的数据信息。
  
   有了这一大堆数据,我们的工作就好做多了,但且慢欢喜,Trace还提供了更强大的功能,请接着看下去。
  
   除了让ASP.Net页面显示这一堆数据外,我们还可以将程序中用到的变量的
  值实时的显示在Trace Information区段中,其方法是调用Trace.Warn或Trace.Write两个方法。他们的用法如下:
  Trace.Warn("Description",Variables);
  Trace.Write("Description",Variables);
  
   我想你们一定会问,这两个有什么区别呢?回答是:在功能上,这两个是一模一样的,只是在显示上,Trace.Warn将会以红色字体表示。
  
   好了,不知道这样介绍一下大家感觉怎么样?反正我是好累啊!好了不说了,有什么问题提吧,我会尽量做答的。让我们下次再见!
  
  
  
  

原文转自:http://www.ltesting.net