例外处理与侦错.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第九章 例外處理與偵錯 (本章為電子檔PDF,可直接以PDF教學) 雖然驗證控制項可以幫我們過濾一些非預期的輸入資料,但有時候仍無法完全避免網頁執行時發生錯誤。此時,可以藉助例外處理進行網頁的維護。 除此之外,在網頁開發過程中,時常會發生一些錯誤,此時,則可以藉助VWD的偵錯功能進行偵錯,找出問題所在。簡而言之,本章的重點將放在如何增進網頁程式的穩定性。 第九章 例外處理與偵錯 ASP.NET可以使用VB.NET或C#來撰寫程式,而這兩種語言都是完整的物件導向語言,且都提供了例外處理機制,因此,ASP.NET可以利用例外處理使程式更加穩定。 除了語言層級的例外處理之外,ASP.NET尚提供了網頁與應用程式層級的錯誤處理。我們將於本章中說明網頁層級的錯誤處理。 就和開發視窗程式一樣,通常在程式發生錯誤時,我們會利用IDE提供的偵錯功能找出錯誤所在,而網頁程式以往通常較難除錯,這主要是因為它牽涉到伺服器與客戶兩端,但在VWD中開發ASP.NET則將這種麻煩減至最低,它的除錯功能和一般視窗程式的IDE幾乎相同。因此,藉由VWD的除錯功能,可以增快開發ASP.NET程式的效率。 大綱 (本章為電子檔PDF,可直接以PDF教學) 9.1 例外處理概觀 (若時程允許,建議教學) 9.1.1 ASP.NET的例外處理層級 9.1.2 例外類別 9.2 VB的例外處理機制(若時程允許,建議教學) 9.3 網頁層級的例外處理(若時程允許,建議教學) 第9章與第10章教學建議: 一週內教 9.1 、 9.2 、 9.3 、 10.1 9.4 、9.5可略過,由學生自學 隔週教 10.2 、 10.3 、 10.4 大綱 9.4 使用VWD偵錯(請學生參考書附光碟檔自學) 9.4.1 偵錯概觀 9.4.2 啟動偵錯 9.4.3 開始偵錯 9.4.4 例外停止 9.4.5 偵錯工具列 9.4.6 設定中斷點 9.4.7 逐步執行 9.4.8 區域變數與監看視窗 9.5 偵錯實例 (請學生參考書附光碟檔自學) 9.6 本章回顧 9.1 例外處理概觀 撰寫程式的過程可以分為三個層次來討論: (1)按照需求撰寫合乎語法,可成功編譯的程式。 (2)假設程式編譯成功,則按照需求檢查與測試程式是否符合需求(一般用於正確輸入的測試)。 (3)檢查與測試程式是否能夠接受各種非預期的狀況(一般用於錯誤輸入的測試)。 其中,若第一階段有錯誤,稱之為語法錯誤或編譯時期錯誤。 若第二階段有錯誤,稱之為語意錯誤或語意不符合需求。 若第三階段有錯誤,稱之為執行時期的錯誤(Run Time Error;簡稱執行期錯誤),而這些錯誤也就是『程式執行的例外狀況』。 9.1 例外處理概觀 第一階段的錯誤是屬於比較容易解決的問題,第二階段的錯誤則和程式設計師的功力有關(是否具備將問題使用程式解決的能力)。至於第三階段的錯誤,則和程式設計師對於每個輸入與執行細節的專注力有關。 在ASP.NET中,可以利用驗證控制項使得輸入能夠落在某個區間,減少第三階段錯誤的發生,但第三階段的錯誤是難以完全避免的,甚至可能必須將程式實際上線使用過一段時間後才會被發現。 本章介紹的『例外處理』就是針對第三階段錯誤(即例外狀況)的捕捉與處理。 9.1.1 ASP.NET的 例外處理層級 ASP.NET網頁程式的例外可以區分為幾個層級(如圖9-1) 首先是在網頁程式中,使用VB.NET或C#的語法自行處理例外,若並未處理而導致例外仍舊存在,則此例外將提升為網頁層級的錯誤 此錯誤會引發Error事件,並傳入Page_Error事件程序中,您也可以於此程序中進行處理,若仍未加以處理,則錯誤將提升為應用程式層級的錯誤(也就是網站層級) 在此應用程式層級中,錯誤可能有兩個出口,一個是按照Web.config檔案中customErrors標籤內的設定來進行對應,另一個則是在Global.asax檔案中的Application_Error事件程序中處理錯誤。 除了應用程式層級的錯誤之外,前面兩種例外與錯誤的處理機制都將於本章中介紹。 而程式語言則使用VB.NET,也就是VB2008的例外處理機制, 9.1.1 ASP.NET的 例外處理層級 9.1.2 例外類別 對於VB而言,它將例外(Exception)分為許多種類,例如溢位例外、除0例外、陣列索引存取例外、資料型別轉換例外等等,這些例外都繼承自System.Exception類別或System.SystemException類別,整體繼承圖如下: 9.1.2 例外類別 由於我們並不打算講解過多VB關於例外處理的技巧(例如自定例外),因此,大多僅利用相關屬性將發生例外的相關訊息取出後輸出,如果您想要學習更多VB處理例外的技巧,請見VB2008的專書。 9

文档评论(0)

9988871 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档