
Высокоуровневые технологии ASP.NET, а именно страницы и Web-сервисы, являются надстройкой над i П'ТР-опраГштчиками. Если взглянуть на глобальный файл .NET пш'пто.оог.Лд. можно увидеть следующие элементы <int pHan<ih'is>:
<httpHandlers> <add verb="*" path=**.ashx" type= "System. Web. (JI, Siinpierlandle rFacto ry "
/>
<add verb="*" path="*.aspx"
type="System.Web.UI.PageHandle rFactory"
/>
<add verb="*" path="*.asmx" type="System,Web. Services.Protocols, WebServмceHandlerFactory ... "
/>
</lrttpHandlers>
Первый элемент сопоставляет расширение .ashx классу SimpleHandler-Factory - фабрике HTTP-обработчиков, умеющей компилировать и создавать экземпляр класса, реализующего IHttpHandler из исходного кода в ASHX-файле. Получившийся объект напрямую используется НТТР-кон-вейером.
На рис. 5 приведен пример TimeHandJer, переписанный в виде ASHX-файла. Директива ©WebHandler сообщает SimpleHandlerFactory имя класса HTTP-обработчика, экземпляр которого следует создать после компиляции исходного кода. Такой подход облегчает развертывание: все, что нужно сделать, - скопировать ASHX-файл в виртуальный каталог. Создавать или изменять файл Web.config или обновлять IIS не требуется - необходимая настройка уже произведена при установке .NET.
Второй элемент <httpHandlers> сопоставляет расширение .aspx классу PageHandlerFactory - фабрике HTTP-обработчиков, умеющей компилировать исходный код в ASPX-файле в класс, производный от System.-Web.UI.Page и создавать его экземпляр. Класс Page реализует интерфейс IHttpHandler, поэтому получившийся объект напрямую используется НТТР-конвейером.
