頁面跟蹤調試和異常處理_第1頁
頁面跟蹤調試和異常處理_第2頁
頁面跟蹤調試和異常處理_第3頁
頁面跟蹤調試和異常處理_第4頁
頁面跟蹤調試和異常處理_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第八章 頁面跟蹤、調試和異常處理 1知識點 掌握在開發(fā)ASP.NET頁面時常見的錯誤類型了解在ASP.NET錯誤調試的方法和類型了解在ASP.NET中異常處理的方法了解在ASP.NET中進行頁面跟蹤的類型和方法 28.1常見錯誤類型 程序語法錯誤:語法錯誤幾乎總是可以被編譯器或者解釋器發(fā)現(xiàn),并顯示錯誤消息提醒程序員問題所在。 在Visual Studio中,錯誤消息顯示在輸出窗口中,這些消息告訴程序員語法錯誤的位置(行號和文件),并給出簡短的描述,找到語法錯誤的起因通常是比較直接的,而語法錯誤往往有:代碼拼寫錯誤。對象未定義。沒有正確的結構,如沒有正確閉合某個結構或標識符等 348.1常見錯誤

2、類型 語義錯誤 :這是一種比較難以察覺的錯誤,當源代碼的語法正確而語義或意思與程序員本意不同時,就是語義錯誤。這種錯誤在結構上沒有異常,所以不能用編譯器識別。但在C#中提供了異常處理機制,能夠識別語義的錯誤。異常通常指示有需要測試的問題。 58.1常見錯誤類型 邏輯錯誤 :這種錯誤可以產生結果但結果是不正確的。例如:計算表達式a+b的值,而在編程的時候寫成了a-b,這樣的錯誤是不能用異常的形式告訴開發(fā)者的。而使用調試技術將方便開發(fā)者在程序中尋找這種邏輯錯誤。 68.2 調試 因為ASP.NET頁面被編譯成程序集,所以可以用與調試任何其他NET組件相同的方法對它們進行調試。 首先,必須確保用調試

3、符號對頁面進行編譯。為了在每頁的基礎上進行調試,把Page指令上的Debug屬性設為true。 另外,通過在Webconfig文件中添加編譯元素把debug設為true,可以啟用應用程序中所有頁面上的調試編譯。 78.2.1 調試錯誤信息的顯示 在應用程序運行錯誤時,應該顯示正確錯誤信息,除此之外,錯誤信息還不應該泄露有助于惡意用戶攻擊系統(tǒng)的信息。ASP.NET允許在web.config文件中配置錯誤的顯示 8Mode取值說明On當報錯模式屬性設置為on時,ASP.NET傳遞和顯示的是用戶自定義頁面,而不是默認錯誤頁面。若沒有自定義頁面,則將顯示一個報錯頁面來描述如何讓遠程用戶看到錯誤Off一

4、旦發(fā)生錯誤,ASP.NET把默認的錯誤頁面顯示給本地或遠程用戶RemoteOnly此為默認屬性,錯誤頁面只能由本地用戶看到,若遠程用戶的訪問請求,則顯示用戶自定義頁面或IIS的報錯頁面在customErrors元素設置中,還有一個defaultRedirect屬性,該屬性可以設置為自定義錯誤頁面的URL 98.2.2 按條件顯示錯誤信息 雖然自定義錯誤頁面可以給用戶提示錯誤的信息,但由于提示都過于籠統(tǒng),因為頁面不存在和服務器發(fā)生錯誤并不一樣,一個簡單的方法是對可能出現(xiàn)的錯誤給出具體的信息,在web.config中使用error標記來完成。 statuscode用來設置錯誤的代碼,由redire

5、ct用來表示所指向的錯誤頁面的URL。這個error標記可以一次或多次使用 .(例)108.2.3 Visual Studio.NET的其他調試技術 Visual Studio.NET的其他調試技術單擊需要設置斷點的語句代碼的左邊的空白位置,會出現(xiàn)一個紅點,這個紅點表示一個斷點。在調試運行時,當調試器運行到該代碼時在該位置中斷執(zhí)行,然后用戶可以查看應用程序的狀態(tài)并進行調試。在斷點設置和移除中以下的快捷鍵可以幫助完成 【F5】快捷鍵:結束調試,繼續(xù)程序的執(zhí)行?!綟10】快捷鍵:逐過程的調試,此時,對于一些函數(shù),會直接跳過具體內部的運行步驟。【F11】快捷鍵:逐語句執(zhí)行 118.3 異常處理 異常

6、處理語句在C#語言中,提供了try-catch語句來處理異常。try-catch語句由一個try塊和其后的一個或多個catch子句(為不同的異常指定處理程序)構成。try /包含執(zhí)行可能會產生異常的程序代碼catch(異常類 Var) /異常處理128.3.2 異常處理實例 例8-1138.4 跟蹤在開發(fā)應用程序時,需要將調試打印語句插入代碼中以確定輸出變量或結構、斷言是否滿足條件。而在ASP.NET中可以利用內置對象Trace對象,對程序執(zhí)行的路徑進行跟蹤,跟蹤可以分為頁級跟蹤和應用程序級跟蹤 148.4.1 頁級跟蹤實例 在頁級別上,開發(fā)人員可以使用TraceContext內部對象來編寫自

7、定義調試語句,這些語句出現(xiàn)在發(fā)送到請求瀏覽器的客戶端輸出的末尾。在使用頁級別跟蹤時,只需要在Page指令后加上Trace=“true”。 在默認情況下,頁面跟蹤是以時間顯示,即TraceMode=“SortByTime”,但也可以讓它按照類別分類顯示,只需要將TraceMode的值改為SortByCategory。 158.4.2 應用程序級跟蹤實例 除了頁級跟蹤功能以外,ASP.NET還提供為整個應用程序啟用跟蹤輸出的方法。在應用程序級啟用跟蹤相當于在此應用程序內對所有頁面啟用頁級跟蹤(只要頁面沒有禁止跟蹤指令)。啟用的方法是在web.config中設置trace的enabled=“true

8、”。 16屬性值說明Enabled設置為true指示為應用程序啟用跟蹤,默認設置為falsepageOutput設置為true表示跟蹤信息是呈現(xiàn)在每頁最后,默認設置為false,表示僅能通過trace.axd使用工具訪問requestLimit存儲在服務器上的跟蹤請求的數(shù)目(系統(tǒng)默認值為10)traceModeSortByTime為默認設置,表示跟蹤信息按時間顯示,若設置為SortByTime則跟蹤信息是以分類進行顯示localOnly設置為false表示為本地主機用戶啟用跟蹤,默認設置為true,表示為所有用戶啟用跟蹤trace的屬性值說明 178.5 本章小結 調試、跟蹤和異常處理在程序開發(fā)中是非常重要的,本章依次介紹了這三個方面的概念以及常用處理方法。闡述了在程序開發(fā)中如何編寫規(guī)范代碼,如何使用跟蹤與調試對代碼進行錯誤的定位和異常的處理。這些都屬于程序開發(fā)的高級技術,但對于經常開發(fā)程序的人員來說,這些方面是十分重要的。 188.6 實

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論