在Asp.Net WebForm开发方式中,我们经常会用到一般处理程序和aspx页面。本文主要分享两者之间的异同。
首先请看一张图:
在这个图中,HttpHandler就是处理程序。
相同点:
- 如果把一般处理程序(ashx处理程序)和aspx页面处理程序放到上图中,它们应该处于相同的位置,都实现了IHttpHandler接口。实现了IHttpHandler接口才具备处理请求的能力。
上面代码就是对Http请求进行处理的,任何实现了该接口的类都可以对Http请求进行处理(调用各自的ProcessRequest()方式)。aspx页面继承自后台代码,后台代码又继承Page类,所以aspx页面具有处理Http请求的能力,同样是一般处理程序,它也实现了IHttpHandler接口,也可以对Http请求进行处理。
- 都能处理静态和动态页面。
不同点:
1 功能上
- 用户请求涉及到复杂的页面布局,使用aspx。aspx页面既可以作为页面呈现给用户,也可以对用户的请求进行处理(由此也可看出aspx的前