六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

追蹤ASP.NET代碼里的bug

[摘要]Web開(kāi)發(fā)中一個(gè)棘手的問(wèn)題是調(diào)試。在ASP或者簡(jiǎn)單JavaScript的時(shí)代,開(kāi)發(fā)人員會(huì)利用print語(yǔ)句來(lái)追蹤代碼里的問(wèn)題。隨著微軟引入ASP.NET,這一方法發(fā)生了改變,因?yàn)樗舜罅康奶匦裕梢岳肨raceContext類(lèi)更加輕松地調(diào)試Web頁(yè)面。選擇追蹤的范圍 在ASP.NET應(yīng)用程序...

Web開(kāi)發(fā)中一個(gè)棘手的問(wèn)題是調(diào)試。在ASP或者簡(jiǎn)單JavaScript的時(shí)代,開(kāi)發(fā)人員會(huì)利用print語(yǔ)句來(lái)追蹤代碼里的問(wèn)題。隨著微軟引入ASP.NET,這一方法發(fā)生了改變,因?yàn)樗舜罅康奶匦裕梢岳肨raceContext類(lèi)更加輕松地調(diào)試Web頁(yè)面。

選擇追蹤的范圍
 
在ASP.NET應(yīng)用程序里,你可以啟動(dòng)對(duì)單個(gè)頁(yè)面或者整個(gè)Web應(yīng)用程序進(jìn)行追蹤的能力。Web.config這個(gè)文件用來(lái)啟動(dòng)在應(yīng)用程序這一級(jí)別進(jìn)行的追蹤。下面就用到了web.config文件里的追蹤元素:

<trace enabled="false" requestLimit="10" pageOutput="false"
traceMode="SortByTime" localOnly="true" />

現(xiàn)在讓我們更加仔細(xì)地看看其各個(gè)屬性:

enabled:用來(lái)啟動(dòng)(真)和關(guān)閉(偽)應(yīng)用程序這一級(jí)別的追蹤。
requestLimit:用來(lái)描述保存在內(nèi)存里的追蹤數(shù)量。
pageOutput:用來(lái)指示追蹤信息需要(真)還是不需要(偽)附加在每頁(yè)之后。如果選擇了偽,那么追蹤信息可以在專門(mén)的追蹤頁(yè)面——trace.axd里查看。
traceMode:用來(lái)確定如何顯示追蹤信息。在缺省狀態(tài)下,它被設(shè)置為按時(shí)間順序顯示,但是它也可以按類(lèi)別(SortByCategory)顯示。
localOnly:用來(lái)指示遠(yuǎn)程調(diào)試可用(偽)或者不可用(真)。
然而,如果應(yīng)用程序里只有一個(gè)頁(yè)面,那么你就會(huì)在追蹤的時(shí)候碰到問(wèn)題。在這種情況下,你可以在頁(yè)面的命令里加上下面的追蹤屬性,啟動(dòng)對(duì)單個(gè)頁(yè)面的追蹤:

<%@ Page language="c#" trace="true" tracemode="SortByCategory"
Codebehind="WebForm1.aspx.cs" AutoEventWireup="false"
Inherits="WebApplication1.WebForm1" %>

要注意trace和tracemode屬性會(huì)和它們?cè)趙eb.config文件里對(duì)應(yīng)的屬性發(fā)生沖突。如果你還不清楚哪個(gè)設(shè)置是優(yōu)先的,那么我告訴你,頁(yè)面設(shè)置會(huì)取代web.config的設(shè)置,所以你在追蹤整個(gè)應(yīng)用程序的時(shí)候要啟動(dòng)它,而在追蹤所選頁(yè)面的時(shí)候禁用它。是選擇頁(yè)面還是應(yīng)用程序這一級(jí)別(或者是把兩者結(jié)合起來(lái))進(jìn)行追蹤要根據(jù)情況來(lái)決定。

處理輸出
一旦決定了需要追蹤的級(jí)別,你就要開(kāi)始接收追蹤的結(jié)果了。如果是正在追蹤整個(gè)應(yīng)用程序,那么你可以在trace.axd頁(yè)面里查看所有的追蹤結(jié)果(具體有多少要取決于你用requestLimit屬性維持的數(shù)量)。同樣的,對(duì)單個(gè)頁(yè)面的追蹤進(jìn)行完之后,你可以查看單個(gè)頁(yè)面的追蹤。

追蹤的輸出結(jié)果分為五個(gè)部分:

請(qǐng)求細(xì)節(jié)(Request Details):這一部分包括會(huì)話的ID、請(qǐng)求時(shí)間、編碼、請(qǐng)求類(lèi)型(get、post等等),以及狀態(tài)碼。
追蹤信息(Trace Information):用來(lái)顯示請(qǐng)求的細(xì)節(jié),這包括和ASP.NET頁(yè)面相關(guān)的各種事件。
控件樹(shù)(Control Tree):用來(lái)顯示頁(yè)面內(nèi)使用的控件;這包括其大小和保存在ViewState里的相關(guān)字節(jié)數(shù)。
Cookie集(Cookies Collection):頁(yè)面所用的cookie的列表。
標(biāo)題集(Headers Collection):和請(qǐng)求相關(guān)的HTTP標(biāo)題,包括主機(jī)(Host)、Cookie和用戶代理(User-Agent)。
服務(wù)器變量:和請(qǐng)求相關(guān)的服務(wù)器環(huán)境變量的完整列表。

在下面的例子里,我列出了追蹤結(jié)果的一部分信息。(它包括追蹤結(jié)果的標(biāo)題集部分。)

 
Headers Collection
Name Value
Connection Keep-Alive
Accept */*
Accept-Encoding gzip, deflate
Accept-Language en-us
Cookie ASP.NET_SessionId=vnadwr45jvrfhv55gbdygobs; LastVisited2=3/1/2004
 2:11:35 PM
Host localhost
User-Agent Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR
 1.1.4322)

從這個(gè)追蹤結(jié)果可以看出,發(fā)出請(qǐng)求的客戶端使用英語(yǔ)和Internet Explorer 6.0,并安裝了.NET框架1.1。

加入用戶信息
缺省的追蹤能力在很多情況下都很有用處,但是其他的情況可能要求獲得頁(yè)面的更多信息。你可以利用TraceContext類(lèi)的Write(寫(xiě)入)和Warn(警告)方法向追蹤日志里添加用戶信息:

Write:向追蹤日志寫(xiě)入信息。
Warn:向追蹤日志寫(xiě)入信息,但是用紅色顯示寫(xiě)入的信息。
每種方法都在承擔(dān)著多種任務(wù),大多數(shù)基本的句法都會(huì)接受簡(jiǎn)單的信息并將其插入到追蹤日志里。這些方法讓你能夠很輕松地在需要的地方放上Trace.Write和Trace.Warn語(yǔ)句,從而向追蹤輸出里加入用戶信息。其輸出被包括在追蹤輸出的追蹤信息部分里。(我覺(jué)得使用Warn方法可以更容易地找到我添加的內(nèi)容,因?yàn)樗鼈兪且约t色顯示的。)

不需要重新編譯
另一個(gè)非常好的特性是,在完成追蹤之后,你不需要?jiǎng)h除追蹤元素;只需要禁用追蹤就行了,這樣追蹤語(yǔ)句會(huì)被忽略。當(dāng)產(chǎn)品中出現(xiàn)問(wèn)題的時(shí)候,其優(yōu)勢(shì)就體現(xiàn)出來(lái)了。一旦轉(zhuǎn)化成為了產(chǎn)品,你可以激活在應(yīng)用程序這一級(jí)別的追蹤,而不對(duì)單個(gè)頁(yè)面進(jìn)行追蹤(把pageOutput設(shè)置成偽),并通過(guò)trace.axd頁(yè)面來(lái)查看追蹤結(jié)果,這樣用戶就不會(huì)被打擾了。

最后,追蹤特性會(huì)增加應(yīng)用程序的負(fù)擔(dān),這反過(guò)來(lái)會(huì)影響到程序的性能。由于這個(gè)原因,你應(yīng)該只有在需要的時(shí)候才在投入生產(chǎn)的應(yīng)用程序里啟動(dòng)它,而且要(在追蹤完成后)盡快禁用它。


--------------------------------------------------------------------------------
本文作者:Tony Patton的職業(yè)生涯開(kāi)始于應(yīng)用程序開(kāi)發(fā)員,并已經(jīng)獲得了Java、VB、Lotus和XML的認(rèn)證,以增加其專業(yè)知識(shí)。




主站蜘蛛池模板: 欧美一级黄色片 | 中文字幕网资源站永久资源 | 四虎一影院区永久精品 | 亚洲激情视频 | 欧美在线观看a | 综合99| 在线播放精品一区二区啪视频 | 欧美一级看片 | 亚洲产在线精品第一站不卡 | 欧美特黄一级高清免费的香蕉 | 日本福利网站 | 欧美视频在线第一页 | 最新欧美伦禁片在线观看 | 无遮挡在线观看 | 青青草原网址 | 日本视频免费在线播放 | 综合网色| 越南高清xxxxx18 | 亚洲影视在线 | 午夜视频导航 | 欧洲成品大片在线播放 | 青娱乐在线免费观看视频 | 亚洲欧洲国产精品你懂的 | 青青久在线视频免费观看 | 日韩精品久久不卡中文字幕 | 日本一区中文字幕 | 五月激情啪啪网 | 亚洲高清视频在线 | 人人揉人人爽五月天视频 | 色偷偷亚洲女性天堂 | 青青草原在线视频免费观看 | 日本噜噜影院 | 日本最新免费二区 | 我要看一级黄色毛片 | 天天看逼 | 婷婷六月丁香色婷婷网 | 日本一道在线 | 亚洲成在人线久久综合 | 日日夜夜狠狠干 | 亚洲va国产va天堂va久久 | 日韩黄色a级片 |