Programming Microsoft ASP.NET 2.0 Core Reference
Overview
Various steps are involved in having the ASP.NET worker process serve an incoming HTTP request. The request is assigned to the aspnet_isapi.dll ISAPI extension which, in turn, hands it over to the HTTP runtime pipeline. The entry point in the ASP.NET pipeline is the HttpRuntime class. A new instance of this class is created for each request, governs its overall execution, and generates the response text for the browser. Upon instantiation, the HttpRuntime class performs a number of initialization tasks, the first of which is the creation of a wrapper object to encapsulate all the HTTP-specific information available about the request. The newly created object an instance of the HttpContext class is then passed along to the pipeline and is used by the various modules to access intrinsic worker objects such as Request, Response, and Server.
In this chapter, we'll first review the startup process of the ASP.NET application and then move on to examine the various objects that form the context of the HTTP request. If you're a former classic ASP developer, some material in this chapter might sound familiar, especially as we discuss old acquaintances such as Request and Response. Although these objects are much more feature-rich and powerful than in ASP, they should be considered lower-level tools; their use is necessary and unavoidable only in a relatively small number of situations. In general, too-frequent use of these objects in your code should be considered an alarm bell, warning you of possible non-optimal use of the ASP.NET programming toolkit.