Архитектура и общие концепции asp.net

В данной статье  рассматриваются базовые принципы функционирования и архитектуры технологии ASP.NET. Вначале рассмотрим схему работы в сети Internet, которую можно назвать «классической», так как эта схема является исторически первой. Основными элементами классической схемы являются браузер и веб-сервер. При взаимодействии браузер и веб-сервер проходят следующие этапы:
1.    Браузер формирует запрос к серверу, используя протокол HTTP. Как правило, браузер запрашивает HTML-страницу, то есть текстовый файл, содержащий HTML-код.
2.    Сервер анализирует запрос браузера и извлекает из локального хранилища требуемый файл.
3.    Сервер формирует HTTP-ответ, включающий требуемую информацию, и отсылает его браузеру по протоколу HTTP.
4.    Браузер выполняет отображение страницы.
Классическая схема проста, но обладает существенным недостатком – страницы статичны, и их содержимое не может меняться динамически в зависимости от запросов клиента. В настоящее время подобный подход не соответствует большинству информационных услуг, предоставляемых с помощью сети Internet39. Все большее распространение получают технологии, при использовании которых страницы (целиком или частично) генерируются на сервере непосредственно перед отправкой клиенту. Эти технологии обычно содержат в своем названии словосочетание Server Pages – «серверные страницы» (ASP, ASP.NET). Работают технологии «серверных страниц» по схожим принципам:
  • Для представления информации на сайте используются не страницы с HTML-кодом, а серверные страницы специального синтаксиса (который часто является HTML-подобным).
  • При запросе серверной страницы веб-сервер запускает отдельный служебный процесс, которому перенаправляется запрос.
  • В служебном процессе страница анализируется, по ней генерируется некий объект, соответствующий странице.
  • Служебный процесс выполняет методы сгенерированного объекта. Как правило, объект имеет специальный метод, генерирующий выходной поток страницы в виде HTML-кода.
  • Сервер перехватывает выходной поток страницы, формирует HTTP-ответ и отсылает его браузеру.
  • Браузер выполняет отображение страницы.
Рассмотрим особенности технологии серверных страниц, применительно к ASP.NET. Служебный процесс ASP.NET основан на управляемом коде и выполняется в Common Language Runtime. Серверной странице в ASP.NET соответствует некий .NET-класс. Это обеспечивает возможности межъязыкового взаимодействия, использования готовых библиотек кода и т. п. Серверная страница может содержать «вкрапления» серверного кода, написанные на нескольких языках – C#, VB.NET, J#.
ASP.NET представляет и поддерживает концепцию фонового кода (Code Behind). Эта концепция позволяет разделить логику и визуальное представление. Согласно данной концепции класс страницы наследуется от некоторого базового класса, в котором размещаются методы, образующие логику выполнения страницы. Сама страница содержит только описание визуальной части (какие визуальные компоненты и где размещены, как настроены их свойства).
Технология ASP.NET также пытается перенести принципы, используемые при написании приложений Windows Forms, на web-программирование. Речь идет о программировании, основанном на обработке событий. Отдельный компонент страницы ASP.NET, как правило, обладает набором некоторых событий. Хорошим примером является кнопка, у которой есть событие On_Click. Для того чтобы закодировать логику страницы, программист пишет обработчики соответствующий событий. Когда событие происходит, информация о нем пересылается от клиента на сервер, где срабатывает обработчик события. Затем страница (вся или только ее часть) вновь пересылается клиенту.
Чтобы страница сохраняла свое состояние между отдельными циклами приема-передачи, это состояние фиксируется в специальном скрытом поле перед отправкой на сервер, а сервер восстанавливает состояние страницы перед отправкой клиенту. Данный технологический прием называется в ASP.NET поддержкой View State (отображаемого состояния).
 

Добавить комментарий


Защитный код
Обновить

Разработчику

Скрипты