logo
Voprosy_KIS_A1607_4

Объектная модель asp.Net. Характеристика и назначение основных объектов. Примеры.

ASP.NET является объектно-ориентированной моделью разработки Web-приложений. Сами ASP.NET-страницы являются объектами классов. Можно создавать программный код с возможностью его повторного использования классами. Эти классы можно использовать для создания экземпляров объектов.

Объектная модель — это иерархия объектов, предоставляющих разработчикам определенные возможности. В ASP.NET используется новая структура Web-страниц, которая отличается от структуры ASP-страниц и обеспечивает поддержку объектной модели для сохранения содержимого ASP.NET-страницы. Добавлен новый класс элементов управления — серверные элементы управления. Можно добавлять собственные комментарии и связывать эти данные с серверными элементами управления. Для оформления Web-страниц имеются наборы директив, которые предназначены для установки параметров. Например, параметры TraceContext и isEnabled позволяют, соответственно, включить и отключить механизм отслеживания Web-запросов.

ASP.NET определяет шесть внутренних объектов структуры страниц:

- application;

- ObjectContext;

- response;

- request;

- server;

- session.

Эти объекты встроены в модель ASP.NET-страниц и готовы к использованию.

В объекте application хранятся данные, которые будут доступны всем пользователям, одновременно работающим с Web-приложением.

Данные о сеансе работы каждого отдельного пользователя сохраняет объект session. Объект application используется для хранения глобальных переменных, которые содержат информацию, общедоступную для всех пользователей Web-приложения, например, приветственное сообщение или индекс посещения Web-страницы. Этот объект представляет собой коллекцию разнородных элементов. Пользователи совместно используют объекты Web-приложения, поэтому требуется гарантировать, что несколько пользователей не смогут одновременно изменять переменные, хранимые в объекте application. Для блокирования содержимого коллекции объектов от изменения применяется метод Lock, для разблокирования — метод Unlock. Так же существуют методы Contents.Remove и Contents.RemoveAll, которые удаляют один элемент из семейства Contents или все сразу соответственно.

С помощью объекта ObjectContext выполняется фиксация или откат транзакций, управляемых MTS. Транзакции могут быть инициированы со страницы ASP.NET. Методы SetComplete и SetAbort объекта ObjectContext используются, соответственно, для фиксации и отката транзакций.

Объект response можно использовать для передачи выходной информации клиенту. Методы объекта respons:

• AddHeader – устанавливает заголовок HTML имя равным значению.

• AppendToLog   – добавляет строку в конец записи журнала веб-сервера, относящейся к этому запросу.

• BinaryWrite – записывает предоставленную информацию в текущий вывод HTTP без преобразования наборов символов.

• Clear – стирает любой буферизованный вывод HTTP.

• End – останавливает обработку файла .asp и возвращает текущий результат.

• Flush – немедленно передает буферизованный вывод.

• Redirect – отправляет обозревателю сообщение о перенаправлении, вызывая попытку обозревателя подключиться к другому URL.

• Write – записывает переменную в виде строки в текущий вывод HTTP.

В объекте request сохраняется информация, отправляемая браузером клиента на сервер в HTTP-запросе. После обработки запроса с помощью объекта request пользователю отправляется ответная информация. С помощью метода BinaryRead объект request извлекает данные, передаваемые клиентом серверу, как часть запроса POST.

Объект server позволяет получить доступ к свойствам и методам Web-сервера. С помощью метода СreateObject можно создать экземпляр объекта server, Execute   – выполняет файл .asp. Так же существует возможность сопоставляения указанного виртуального пути с физческим путем – это делает метод MapPath. А Transfer передает всю информацию о текущем состоянии другому файлу .asp для обработки.

Объект session используется для хранения информации о пользовательских сеансах. Значения переменных объекта session сохраняются, даже когда пользователь переходит на другую страницу Web-приложения. Этот объект создается при организации пользователем сеанса и уничтожается при его завершении. Например, в нём можно сохранять регистрационную информацию каждого пользователя, посещающего сайт виртуального магазина. Эта информация остаётся доступной для всего Web-приложения даже при переходе пользователя на другие Web-страницы сайта. Объект session использует три метода: Abandon для уничтожения объект session и освобождения его ресурсов, а Contents.Remove и Contents.RemoveAll для удаления одного элемента или всех элементов из семейства Contents соответственно.

Каждый из внутренних объектов ASP.NET обладает набором методов и коллекций для управления функциональными возможностями этого объекта. Назначение и возможности внутренних объектов технологий ASP и ASP.NET практически идентичны.