仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 911|回复: 7
打印 上一主题 下一主题

[学习教程] ASP.NET教程之关于在ASP.NET 中举行调试的办法(转载...

[复制链接]
跳转到指定楼层
楼主
发表于 2015-1-16 22:50:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
完全不一样的。.net其实我也说不太清,.net可以把他理解为跟J2EE相对的工具。c++主要做系统相关的开发你要学.net的话就应该学C#。(其实微软在.NET平台上也考虑了给C++留一个地位。用过ASP的人对它的调试应当是影象深入的。在整片整片的代码中找到那几个
堕落的中央,难度不可思议。如今微软推出了ASP的更新换代产物ASP.Net。关于
ASP.Net的优点,我想良多网站都已先容了差未几的,不外关于ASP.Net的调试
讲得就不是良多了。以是,我就以我的一点团体履历写了这一篇文章。因为,我
也是打仗ASP.Net不久,讹夺的地方在所不免,还请人人多多斧正。好了,言回正传。

第一招:设置Config.web

一样平常,当我们写好的网页运转堕落了,ASP.Net就会在页面上告知我们程序有
错了,但事实错在那里,它是没有提醒的。为了能让ASP.Net进一步提醒我们堕落
的信息。我们就有需要编纂Config.web中的设置信息。

大概另有良多方才打仗ASP.Net的人不太懂得Config.web这个文件。那我就特地先容一下。Config.web是ASP.Net的一个设置文件,它内里寄存着关于ASP.Net的一切设置信息。当实行一个ASP.Net页面时,它会先到该页面地点的目次查找这个文件,假如没有找到,就往上一级目次找,一向到wwwroot目次。假如都没有,它就会挪用X:WINNTMicrosoft.NETFrameworkv1.0.2204目次中的Config.web文件(X为体系目次)。以是,假如人人要想改动一切页面的设置,就应当改WINNT目次中的谁人Config.web。别的特地说一下,当你翻开Config.web后,你会发明这是一个XML布局的设置文件。

好了,先容讲授这么多了,回到我们的主题。如今你要做的第一步就是:打
开大概新建一个Config.web文件。我们分隔来讲:
假如是新建,你就必要用文本编纂器新建一个新的文档,然后往内里输出下
面的语句:
<configuration>
<customerrorsmode="off"></customerrors>
</configuration>

输完后选择另存为,输出文件名Config.web,将它保留到以后页面不异的文件夹中便可。假如是修正一个已存在的Config.web文件,你只必要用文本编纂器翻开它,然后在<configuration>和</configuration>之间的恣意中央输出:
<customerrorsmode="off"></customerrors>便可。

如今你能够在看一下堕落页面的提醒信息了。
上一次我们说到设置Config.web文件,让堕落信息给出更多的提醒。可光有
提醒又有甚么用呢?“最多就是晓得错在那里,可我仍是不会改呀!”别急,别
急,看看我们这篇文章叫甚么来着,“三板斧”,那固然是一斧胜过一斧啦!上
次那招不敷凶猛,我们另有上面的那,以是别急啊,且听我渐渐道来。

第二招:Trace追踪

用过ASP的人应当都用过上面的语句吧:
Response.WriteXXX
Response.End

固然我不太喜好ASP的编程办法,可是这类便利的调试手腕仍是很好的。换用
ASP.Net今后,我发明ASP.Net供应一种更壮大的调试办法,它就是我们如今要说
的Trace。所谓Trace功效就是在网页的最后面加上一些标志,至因而甚么标志呢?嘿嘿,我不克不及即刻告知你(欠好,臭鸡蛋……哇!)。我是说,我要先先容一点基本的常识啦!

我不晓得人人对ASP.Net的页面标示懂得几,为了上面解说的便利,我仍是
提要的先容一下吧!ASP.Net的页面标示指的是在每个ASP.Net页面最下面,用
<%@和%>括起来的语句。它的功效是用来断定在处置ASP.Net文件的时分,必要系
统做一些甚么特别的设定。详细的语法以下:
<%@directiveattribute=value%>
个中:directive就是页面标示符;attribute是该标示符对应的一些属性。
注重:在属性之间必要空格,而在"="之间不克不及有空格。
ASP.Net如今包括以下7种标识
@Page,
@Control,
@Import,
@Registe,
@Assembly,
@OutputCache,
@Webservice

我们用得最多的就是@Page标示,而如今我要讲的Trace功效,也要用到@Page。(关于这七个标示的详细使用,我会在今后发贴报告的。)好了,回到我们的主题。要用Trace功效,你必需在页面的最下面加上:<%@PageTrace="true"%>这句话。加好后,你就能够看看页面的运转情形了。运转该页面。你会发明在页面的下半部分呈现了一年夜堆的数据。上面就来注释一下这些数据的寄义:
RequestDetails:经由过程Request体例向扫瞄器所读取的数据;
TraceInformation:事务产生或程序实行的历程信息;
ControlTree:网页所利用的控件及控件之间的阶级干系;
CookiesCollection:网页所利用的Cookie信息;
HeadersCollection:扫瞄器的表头信息。
ServerVariables:Server变量的数据信息。

有了这一年夜堆数据,我们的事情就好做多了,但且慢欢乐,Trace还供应了更壮大的功效,请接着看下往。

除让ASP.Net页面显现这一堆数据外,我们还能够将程序顶用到的变量的
值及时的显现在TraceInformation区段中,其办法是挪用Trace.Warn或Trace.Write两个办法。他们的用法以下:
Trace.Warn("Description",Variables);
Trace.Write("Description",Variables);

我想你们必定会问,这两个有甚么区分呢?回覆是:在功效上,这两个是千篇一律的,只是在显现上,Trace.Warn将会以白色字体暗示
第三招查错神器Debugger

要用好的刀兵,没点筹办是不可的,以是我们就先来做点筹办活动。
1.Config.web的设定:还记得第一招中讲的吗?对了,仍是这个文件,翻开它,向内里到场这条语句
<compilationdebugmode="true"></compilation>
申明:因为在预设情形下,ASP.Net会以一般形式来运转页面,为了能让它以查错形式编译网页,我们就必需到场这句语句。

2.启动查错工具DbgUrt.exe:这个程序放在x:ProgramFilesMicrosoft.NetFrameworkSDKGuiDebug目次里,文件名是DbgUrt.exe

3.激活查错功效:
运转DbgUrt.exe程序
--〉拔取菜单Debug/Processes
--〉在呈现的Processes对话框当选中Showsystemprocesses和Showprocessesinallsessions
--〉在Availableprocesses列表框的最上面找到xspwp.exe(假如没有,请运转一.aspx页面,然后按Refresh键。)
--〉拔取该文件后,按Attach键
--〉在呈现的对话框当选中CommonLanguageRuntime,然后按OK,回到Processes对话框
--〉按Close键
--〉在程序的主菜单当选取File/Open/File,翻开你想要检测的文件。

上面正式入手下手页面调试。
使用DbgUrt.exe翻开欲调试的文件后,我们要做的第一件事变就是:设置断
点。是否是以为和别的Windows使用程序的调试很像(甚么很像?几乎就是一模
一样吗!)加断点的办法很复杂,先决意必要加断点的中央,然后将光标挪动到
该行,按下F9大概在该行的最后面点击鼠标左键,该句后面就会呈现一个问号的
标志,这就是断点!我们固然能够设定多个断点,只需你喜好。你如果像作废一
个断点,只需在该行反复设置断点的举措便可。

设置好断点后,只需利用扫瞄器扫瞄被调试的页面,当程序运转到断点的位
置时,它就会主动弹出DbgUrt.exe,而且停在方才的断点地位。这是,我们便可
以使用CommandWindow-Immediate窗口反省变量的值了。

当我们想持续实行以后页面时,我们有几种选择:
1、按F5键,运转到下一个断点,若没有断点,则运转完该页面;
2、按F11键,实行单步操纵;
3、按F10键,一样是单步操纵,但它会进进子程序(函数)中的语句。

固然,DbgUrt.exe的功效一定比我先容的要壮大的多。编写ASP.Net程序,有
个如许的利器,真是省了我们良多工夫啊!怎样还不
[img=1border=0style=,1src=]http://www.ckuyun.com/[/img]

刚刚打开这篇专题,猛然见到HAL9000发表的《对于大型公司项目平台选择j2ee的几层认识》系列,深受启发。
因胸联盟 该用户已被删除
沙发
发表于 2015-1-28 19:01:39 | 只看该作者
是指转换后的Servlet程序代码的行数。这给调试代码带来一定困难。所以,在排除错误时,可以采取分段排除的方法(在可能出错的代码前后输出一些字符串,用字符串是否被输出来确定代码段从哪里开始出错)。
乐观 该用户已被删除
板凳
发表于 2015-2-5 22:35:05 | 只看该作者
代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
再见西城 该用户已被删除
地板
发表于 2015-2-13 23:44:28 | 只看该作者
ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp)。
蒙在股里 该用户已被删除
5#
发表于 2015-3-4 03:16:30 | 只看该作者
众所周知,Windows以易用而出名,也因此占据不少的服务器市场。
小妖女 该用户已被删除
6#
发表于 2015-3-11 15:44:34 | 只看该作者
主流网站开发语言之ASP:ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和VisualBASIC类似,可以像SSI(ServerSideInclude)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。
第二个灵魂 该用户已被删除
7#
发表于 2015-3-19 01:31:06 | 只看该作者
ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp)。
透明 该用户已被删除
8#
发表于 2015-3-27 02:08:05 | 只看该作者
CGI程序在运行的时候,首先是客户向服务器上的CGI程序发送一个请求,服务器接收到客户的请求后,就会打开一个新的Process(进程)来执行CGI程序,处理客户的请求。CGI程序最后将执行的结果(HTML页面代码)传回给客户。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-7 15:58

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表