动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
电脑书籍下载:程序设计书籍 | 数据库教程书籍 | 平面与多媒体书籍 | 网络通讯书籍 | 系统管理书籍 | 网络安全书籍 | 认证考试书籍
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 软件工程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ 软件工程 ]的信息



本月文章推荐
.谈谈软件项目管理的重要性(1).
.有效的软件质量管理.
.2006拭目以待 SOA标准走向成熟.
.软件项目需求分析的文档包括的内.
.关于项目团队的发展阶段特点、问.
.BEA继续加快SOA的进程.
.创建股票报价Web服务.
.IBM发布创新“全内置”System i5.
.用VS2005生成数据库连接字符串.
.软件开发项目需求管理简述.
..NET:微软大胆向Web服务的跳跃.
.SOA架构中间件发展趋势调查分析.
.软件开发管理与质量控制(一).
.系统设计前的需求探索(1).
.如何建立Web服务.
.SOA框架的不足.
.需求阶段项目如何监理?.
.Linux BOOTLOADER全程详解(Arm S.
.体验.NET 2.0的优雅之异步Web服务.
.SOA扩展Web服务的前景(一).

Atlas应用程序的调试技巧

发表日期:2008-3-23 |



  “Atlas”程序由服务器端代码和客户端代码组成,并且,浏览器可能会要去异步请求一些数据。那么,怎样才能Debug这样的web程序呢。本文将告诉你如何使用一些技术和工具来方便的完成这件事。

  注:

  除了Visual Studio和Internet EXPlorer,本文提及的程序是一些第三方的,微软不会提供支持的。请到这些工具的主页去阅读授权和支持信息。

  为了更好的Debug,先对应用程序进行配置

  要启用VS的Debug功能,请添加一个<compilation>元素在站点根目录的web.config文件中,并且设置debug属性为true。请参阅,Asp.Net Settings Schema, compilation element

Atlas应用程序的调试技巧(图一)<configuration>
Atlas应用程序的调试技巧(图二) <system.web>
Atlas应用程序的调试技巧(图三) <compilation debug="true">
Atlas应用程序的调试技巧(图四) <!-- etc. -->
Atlas应用程序的调试技巧(图五) </compilation>
Atlas应用程序的调试技巧(图六) </system.web>
Atlas应用程序的调试技巧(图七)<configuration>
Atlas应用程序的调试技巧(图八)

  当Degub启用后,“Atlas”会使用一个Debug脚本类,这个类库将提供附加的对话信息和一个下面将讲解的Debug帮助类。

  在服务器端进行Tracing

  假如你通过启用“partial rendering”进行服务器端Tracing来Debug页面(即页面中包含一个启用了EnablePartialRendering的ScriptManager和一个Mode为Conditional的UpdatePanel),那么你可以使用Trace视图(Trace.axd)来显示页面输出根踪信息。此时,你可以在页面一开始呈现时就看到根踪输出信息显示在页面的尾部,但是这些信息不会在异步Postback后进行更新,这是因为仅仅只有UpdatePanel的内容需要在变化时被更新。关于使用Trace viewer的更多信息,请参看 ASP.NET Trace.

  捕捉HTTP交互

  当开发web应用时,观察服务器与客户端往返往返的HTTP交互是很有用的,有两个工具可以帮助我们干这件事:

  Fiddler. 这个工具工作原理是做为一个Proxy记录下所有HTTP交互的日志。它支持IE和其它的浏览器。使用Fiddler,你可以检测每个请求和响应,包括headers,cookies,和HTTP消息主体内容。

  Web Development Helper. 这个工具只能用于IE,但是它除了在日志中记录HTTP交互,还能查看Html DOM,在一个分隔开了的窗口中显示trace信息,关闭应用,还能解码页面的View state。

  Debug Helper类

  当你在启用了Debug后编译你的应用程序,“Atlas”客户端类库会定义一个Debugging helper类,并且实例化一个全局的debug对象供使用。使用这个debug对象,你能在页面的尾部用易读的方式显示对象的信息,能显示trace messages,能使用断言,中断。假如你使用VS调试器附加到IE进程中,你也可以在Output窗口中查看跟踪信息。


  下面的代码将显示输出一个对象的信息:


Atlas应用程序的调试技巧(图九)Atlas应用程序的调试技巧(图十)var o = Atlas应用程序的调试技巧(图十){
Atlas应用程序的调试技巧(图十二)Atlas应用程序的调试技巧(图十三) colors: Atlas应用程序的调试技巧(图十四){
Atlas应用程序的调试技巧(图十五) red: [255, 0, 0],
Atlas应用程序的调试技巧(图十六) green: [0, 255, 0],
Atlas应用程序的调试技巧(图十七) blue: [0, 0, 255]
Atlas应用程序的调试技巧(图十八) },
Atlas应用程序的调试技巧(图十九) width: 600,
Atlas应用程序的调试技巧(图二十) title: 'debugging with "Atlas"'
Atlas应用程序的调试技巧(图二十)};
Atlas应用程序的调试技巧(图二十二)
Atlas应用程序的调试技巧(图二十三)debug.trace("output trace messages");
Atlas应用程序的调试技巧(图二十四)debug.dump(o, 'object name', true, 'Atlas应用程序的调试技巧(图二十五) ');
Atlas应用程序的调试技巧(图二十六)



Output:

output trace messages
... object name {Object}
... +colors {Object}
... ++red {Array}
... +++[0]: 255
... +++[1]: 0
... +++[2]: 0
... +++0: 255
... +++1: 0
... +++2: 0
... ++green {Array}
... +++[0]: 0
... +++[1]: 255
... +++[2]: 0
... +++0: 0
... +++1: 255
... +++2: 0
... ++blue {Array}
... +++[0]: 0
... +++[1]: 0
... +++[2]: 255
... +++0: 0
... +++1: 0
... +++2: 255
... +width: 600
... +title: debugging with "Atlas"

  debug类提供了以下这些方法供使用:

debug.assert(condition, message, displayCaller)

  判定condition参数是不是为true.假如为false,这个方法将使用一个Message box显示message参数。假如 displayCaller参数为true,那么调用者的信息也将显示出来。


debug.clearTrace()

  清空输出.

debug.dump(object, name, recursive, indentationPadding)

  在页面最后用易读的方式显示一个对象的信息。name属性用于在显示时作为显示的标签(等于是作为显示一大段对象的信息前作一个标题的作用),假如recursive为true,那么这个对象中的对象的信息也会递归显示出来。indentationPadding用于填充在每一行信息的起始处,起一个缩进的作用。

debug.fail(message)

  中断调试器 (仅Internet Explorer).

debug.trace(text)

  将text输出到trace.

  对Internet Explorer进行配置

  Internet Explorer normally ignores any problems it encounters in javascript. To enable debugging, from the Tools menu, select Internet Options. 默认情况下,IE会忽略掉JavaScript错误。为了支持Debug,请打开IE的Tools菜单,选择Internet Options,在Advanced选项页,清除Disable Script Debugging(Internet Explorer)和Disable Script Debugging(Other)复选框的选择,并选中Display a nofication about every script error.结果如下图所示:

Atlas应用程序的调试技巧(图二十七)

  将Visual Studio调试器附加到Internet Explorer

  要调试客户端代码,你必须把一个调试器附加到IE进程去。当你在VS中使用F5或Start Debugging命令启动调试一个应用程序时,调试器会被自动的附加到IE进程。

  当然你也可以把VS的调试器附加到一个正在运行中的应用程序。你可以这样来做,在Debug菜单,选择Attach to Process...,在Attach to Process对象框中,选择你想要附加调试器的IE的运行实例。

  注:

  假如IE被合适的配置了Debug选项,在附加调试器到IE实例进程的对话框中的类型列中,你将会看到Script,x86选项,假如你只看到x86选项,那么请检查你的IE配置。

  当为IE进行了合适的脚本调试配置后,假如IE碰到一个脚本错误,而此时没有附加进来一个调试器,这时就会显示一个对话框,询问你是否要选择一个调试器附加到当前IE进程进行调试。你可以选择不附加而继续运行程序,也可以附加一个调试器步进调试当前的脚本代码。

  一些已知的IE调试的问题和解决方案

  当VS调试器被附加到IE后,你可以在VS的Script Exlorer窗口中看到一个被调试的脚本的列表,(在Debug菜单中选择Windows-->Script Explorer)。从Microsoft.Web.Atals.dll中动态生成的Atlas的脚本库会作为一个以WebResource.axd?...开头资源呈现.一个已知的VS的bug会阻止你一开始就去打开这个文件,假如你在尝试打开这个文件时,VS显示出一个错误信息或当你双击这个文件名去打开这个文件时根本就没有反应,你可以先打开一个别的JavaScript文件,再去打开它。

  在调试器步进到一个Asp.net页面的代码中前,VS不答应你在这个页面中的<script>元素中设置一个断点。解决办法之一是设一个断点在方法调用处,然后步进到这个页面的Code中来,最后调试器停在该页的脚本代码的一行中,这时,你就可以正常的设置断点了, 另外一种让调试器能识别页面中脚本的方法是在页面文件中的一个方法中调用debug.fail()方法。当你调用这个方法时,调试器就会停止在调用debug.fail()的地方,然后,你就可以在任何其它地方设置断点了。第三种方法是把你写的所有脚本放在一个外部的JavaScript文件中(.js文件)。

  VS答应你在一个传统的JavaScript函数的第一行设置一个断点,但在“Atlas”使用的匿名方法中不行。假如匿名方法只有一行代码,或你本来就想在第一行设断点,这时,你可以在这个方法的第一行前插入一行空代码,然后在第二行设断点。

  Firefox

  Firefox没有集成到VS的调试器中,所以你不能用VS调试器步进调试客户端代码。 不过,你可以使用 Venkman 调试器, 它是Firefox的一个插件,还有另一个很有用的工具叫 Web Developer Extension, 它能让你查看DOM和Css 样式.

  Fiddler也能工作于Firefox.但是,你必须配置Firefox对于你本机8888端口路由HTTP请求,更多信息,请查阅 Configuring Clients right">(出处:清风软件下载学院)

上一篇:IBM 建立商业解决方案中心 人气:118
下一篇:代码编写中的心理学与美学 人气:192
浏览全部软件工程的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-7-8 ECShop v2.6.0 Build 20080707(G
2008-7-8 动网论坛PHP版 v2.0++ Build 080
2008-7-8 中国IT总舵 v9.0 UTF版
2008-7-8 凹丫丫新闻发布系统 v4.6 Build
2008-7-8 topview数据查询 v3.0
2008-7-8 Z-Blog v1.8 Spirit Build 80708
2008-7-8 Z-Blog v1.8 Spirit Build 80708
2008-7-8 凹丫丫新闻发布系统 v4.6 Build
2008-7-8 新动软万能网站内容管理cms系统
2008-7-5 AgileMessenger即时通讯工具 v1.
2008-7-5 GoodCalculator2.0版固件计算器
2008-7-5 RepoName源地址搜索工具 v1.21b
2008-7-5 AgileMessenger即时通讯工具 v1.
2008-7-5 TouchCopy多媒体管理软件 v3.13完
2008-7-5 VideosTone视频铃声 v1.1汉化破解
2008-7-5 TouchPad触摸板 v4.44破解版
2008-7-5 VideosTone破解补丁 v1.0
2008-7-5 Feeds GoogleReader客户端 v0.4.3


  发表评论
姓 名: 验证码:
内 容:
[ 汉字翻译拼音 ] [ 广告代码 ] [ 符号对照表 ] [ 进制转换 ] [ 经典小工具 ] [ 个税计算 ] [ 汉字简繁转换 ] [ 普通单位换算 ] [ 公制单位换算 ]
[ 生辰老黄历 ] [ 国内电话区号 ] [ 国家代码与域名缩写 ] [ 文字加密解密 ] [ 健康查询 ] [ 万年历 ] [ 手机号码查询 ] [ ip搜索 ] [ Google PR查询 ]
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報