让我们以一个简单的定义开始:什么事ASP.NET?我喜欢把ASP.NET定义如下:
ASP.NET是一个使用托管代码完成的,从前到后处理web请求的,久经考验的框架。它并不仅仅是WebForm和WebService…
ASP.NET是一个请求处理引擎,它通过它的内部的管道将一个请求传送到一个开发者的代码上。实际上这个引擎完全独立于HTTP或者web服务器。事实上,HTTP Runtime是一个在IIS或者其他任何服务器之外的,您的应用程序的宿主环境。举一个例子,您可以将ASP.NET runtime放到一个Windows窗口中(点击获得更多详情http://www.west-wind.com/presentations/ASP.NETruntime/ASP.NETruntime.asp)
运行时为请求通过这个管道提供了一个复杂而又优雅的机制。有一系列的相关对象,大多数都是可以在请求的每一个层次,通过实现其子类或者实现事件接口来进行扩展。通过这个机制能够接触到非常低层的接口,例如缓存,权限验证等。你甚至能在接受请求的前后过滤内容,或者将满足特定要求的请求转到你的代码或者其他的URL地址。有很多不同的方法来完成相同的事情,而且所有的这些方法实现的都非常直接,这样,就可以灵活的根据性能以及开发难度来选择最好的方法.