【Asp.Net】一般处理程序(ashx处理程序) 和 aspx页面处理程序
在Asp.Net WebForm開發方式中,我們經常會用到一般處理程序和aspx頁面。本文主要分享兩者之間的異同。
首先請看一張圖:
在這個圖中,HttpHandler就是處理程序。
相同點:
上面代碼就是對Http請求進行處理的,任何實現了該接口的類都可以對Http請求進行處理(調用各自的ProcessRequest()方式)。aspx頁面繼承自后臺代碼,后臺代碼又繼承Page類,所以aspx頁面具有處理Http請求的能力,同樣是一般處理程序,它也實現了IHttpHandler接口,也可以對Http請求進行處理。
不同點:
1 功能上
2 處理流程上
一般處理程序處理動態頁面的時候需要把整個頁面加載到服務器,接下來替換某些內容;處理圖片等內容時會直接返回響應報文。而aspx頁面大多使用了服務器控件,可以通過不加載整個頁面而更新頁面。
一般處理程序通過設置content-type設置返回的類型,可以返回靜態頁面,也可以返回圖片,字符串等內容。一般處理程序處理靜態數據比較合適,但是處理動態或頁面的時候就會變的比較麻煩。他需要先把頁面讀取到服務器,然后再替換讀取到的里面的某項數據,比較麻煩。
aspx是動態服務器頁面的意思,aspx頁面中也可以放置服務器控件,這樣后臺就可以通過服務器控件的Id進行控件的更新以及讀取操作,當需要更改某項內容時也不需要進行整個頁面的讀取操作,只需要更改某個控件的屬性即可。相對于一般處理程序而言,很是方便。
3 性能上
4 應用范圍上:
希望本文能對您有所幫助,感謝您的閱讀。如果有不當之處,還請您及時扶正。
總結
以上是生活随笔為你收集整理的【Asp.Net】一般处理程序(ashx处理程序) 和 aspx页面处理程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【HTTP】get 和 post 两种基
- 下一篇: 【Asp.net】Cookie对象