Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архитектура информационных систем.docx
Скачиваний:
73
Добавлен:
23.05.2015
Размер:
32.29 Mб
Скачать

Сценарии на стороне клиента

Язык скриптов, способные динамически изменять содержимое web-страницы непосредственно у клиентаJavaScriptиVBScript.

Скрипты на этих языках встроены в код HTML, который сервер посылает браузеру.

Сценарии, выполняемые на стороне клиента, выделяются тегами <SCRIPT> и </SCRIPT>. Браузер интерпретирует этот код и показывает пользователю результат.

Даже если на странице используется JavaScriptи анимированные картинки.GIF, она называется статической.

HTML

HTML(HyperTextMarkupLanguage) - язык разметки гипертекста.

Разработан Тимом Бернерсом-Ли в рамках создания проекта распределенной гипертекстовой системы, которую он назвал WorlfWideWeb(WWW) или Всемирная паутина.

Предназначен для написания гипертекстовых документов, публикуемых в WWW.

Документ на языке HTMLможет включать следующие компоненты:

  • стилизованный и форматированный текст

  • команды включения графических и звуковых файлов

  • гиперсвязи с различными ресурсами Internet

  • скрипты на языке JavaScriptиVBScript

  • различные объекты, например Flash-анимацию.

Документы HTML- обычные текстовыми файлами, содержащими специальные теги (или управляющие элементы_ разметки. Теги разметки указывают браузерWebка надо отобразить страницу.

Файлы HTML-htmилиhtml

Теги и атрибуты

Обычно теги HTMLиспользуются парами и заключены между двумя символами угловых скобок:

Различия - структура

Веб-приложения:

  • файлы проектов VisualStudioпозволяют указать файлы, добавляемые в проект, определяя файлы, компилируемые во время построения.

Веб-сайты:

  • все файлы в структуре папок автоматически отмечаются для добавления в веб сайт.

  • если из компиляции требуется исключать какой-либо файл, его необходимо удалить из папки проекта веб-сайта или изменить расширение имени файлы на расширение, которое не поддерживается при компиляции.

Преимущества веб-приложений:

  • Можно с легкостью временно удалить файлы сайта и сохранить их отслеживание, поскольку они остаются в структуре папок.

Преимущество веб-сайтов:

  • Управлять структурой проекта исключительно в VisualStudioне требуется.

(тут пропущено 14 апреля)

Описание веб-формы

Страница ASP.NET

Обработка первого запроса

И последующих...

Этапы обработки веб-формы на сервере

На сервере обработка ASP.NETweb-форм выполняется в несколько этапов. На каждом этапе инициируются разные события. Это позволяет выполнить специфические действия в ходе процесса обработки и выполнять требуемые действия.

Основными этапами процесса обработки ASP.NETстраницы являются:

  • инициализация среды страницы

  • инициализация пользовательского кода

  • проверка данных (validation)

  • обработка событий (Eventhanding)

  • Автоматическое связывание с данными

  • Очистка

Эти этапа выполняются независимо для каждого web-запроса.

Жизненный цикл страницы

Инициализация среды страницы

На этом этапе АСП.НЕТ создает страницу (объект класса Page)

Создаются все Элементы Управления, которые были описаны в aspxwebстранице. Кроме этого, если страница вызывается не первый раз (т.е. выполнена обратная справка -postback). То асп.нет выполняет десериализацию информации состояния и применяет ее ко всему ЭУ.

Инициируется событие Page.init. Однако это событие редко обрабатывается веб-страницей, так как еще слишком рано выполнять ....

Инициализация пользовательского ядра

Инициируется событие Page.loadи большинство страниц обрабатывают это событие для выполнения требуемого задания начального состояния (такого, как заполнение динамических текстов или конфигурирования ЭУ)

Событие Page.loadвозникает всегда.

При первом вызове (!IsPostBack=true) необходимо загрузить начальные данные из внешних источников. При повторных вызовах начальные данные берутся из состояния формы (viewstate) и применяются автоматически)

Проверка данных

Элементы управления проверки

Основные свойства проверочных ЭУ

Пример использования

Адаптеры данных

Оформление страниц

Доступные технологии

Шаблоны (MasterPage)

  • Позволяет задать шаблон разметки для группы страниц

Темы (Theme)

  • Определяют набор файлов стилей и изображений для использования в приложении

Скины (Skin)

  • Задают набор общих...

Использование шаблонов

Типы страниц:

Мастер страницы - шаблон страницы

  • содержит фиксированные элементы, одинаковые для всех страниц - например, верхний или нижний колонтитул...

  • может содержать элементы, доступные для обычной страницы, а также программный код

Страницы содержимого - каждая страница содержимого ссылается на одну мастер страницу, от которой получает элементы и расположение.

Создать сайт

Редактирование шаблона

Класс Page

Webстраница реализуется в виде объекта специального классаPage, из пространства именSystem.Web.UI

Наследование от класса Pageпредоставляет свойства:

  • Session- данные сеанса пользователя

  • Application- данные сеанса приложения

  • Cache- кэш данных

  • Request- параметры запроса

  • Response- объект, управляющий выводом ответа пользователя

  • IsPostBack

  • Server

  • User

Взаимодействие с входящим запросом

Свойство System.Web.UI.Page.Requestобеспечивает доступ к экземпляру классаHttpRequest

Члены типа HttpRequest:

  • Browser- Предоставляет информацию о возможностях клиентского браузера

  • Cookies- Получает коллекцию куки-наборов, присланную клиентским браузером

  • QueryString- получает коллекцию переменных строки запросаHTTP

  • Form- получает коллекцию переменных формыHTTP

Пример: статистика браузера

Доступ к выходным данным формы

Взаимодействие с исходящим ответом

Свойство ResponseклассаPageпредоставляет доступ к экземпляру типаHttprResponse

Этот тип определяет ряд свойств, которые позволяют форматировать ответ HTTP, отправляемый обратно клиентскому браузеру.

Свойства типа HttpResponse:

  • ContentEncoding- Получает или устанавливает набор символовHTTPдля выходного потока

  • Cookies- Получает коллекциюHttpCookie, отправленную текущим запросом

  • Output- Позволяет выполнять специальный вывод в тело исходящего содержимогоHTTP

Выдача HTML-содержимого

Перенаправление на страницу

Метод HttpResponseRedirectпозволяет перенаправлять пользователя на новыйURL

...

Response.Redirect("http:/www.mail.ru.");

Поддержка состояния формы между ее вызовами

По умолчанию ASP.NETподдерживает состояние всех ЭУ в ходе обратной отправки (postback)

Серверные ЭУ автоматически заполняются при обратной отправке

Состояние ЭУ не хранится на сервере.

Сохранение состояния

ASP.NETиспользует скрытое полеViewStateдля хранения свойств ЭУ. В это поле можно добавлять свои данные

Можно в страницу добавить свои скрытые поля и хранить в них данные приложения

Элементы Cookiesхранят значения на компьютере пользователя и передаются вместе с запросом на страницы сервера

Строки запроса Querystringхранят значения вURLадресе, который виден пользователю

Доступ к данным

Создание источника данных

В обозревателе решений - правой кнопкой по значку проекта - Добавить -Добавить папку ASP.NET-App_Data

По папке App_Dataправой кнопкой -

Отображение данных

Редактирование данных

DatailsView

Второй источник данных

Аутентификация пользователя с помощью БД

(8.5.15)

Web-сервисы

  • Web-сервисы исполняются на сервере (исполняются средой в нашем случае служитASP.NET)

  • Web-сервисы публикуют методы, которые могут быть вызваны внешними клиентами

  • Веб-сервисы ожидают поступления httpp-запросов для вызова методов

Архитектура Web-сервисов

Реализация Web-служб для .NETприложений

  1. Вы разрабатываете веб-службу как .NET-класс с атрибутами, которые идентифицируют его как веб-службу с некоторыми функциями.

  2. В среде .NETавтоматически создается документWSDL

  3. Потребитель находит вашу веб-службу и, решив воспользоваться ею, добавляет соответствующую веб-ссылку в проект VisualStudio.

  4. В среде .NETосуществляется автоматическая проверка локументаWSDL, генерируется прокси-класс

  5. Потребитель вызывает один из методов класса веб-службы. С его точки зрения этот вызов не отличается от вызова метода любого другого класса, но в действительности потребитель взаимодействует с прокси-классом, а не веб-службой.

  6. Прокси-класс преобразует переданные параметры в сообщение SOAP

  7. Вскоре прокси-класс получает SOAP-ответ, преобразует таковой в соответствующий тип данных

  8. Потребитель использует возвращенную ему информацию