Ватсон Карли
Шрифт:
Наконец, стоит помнить, что потребителями службы Web не обязательно должны быть приложения Web. Нет причин, по которым нельзя использовать службы Web из приложений платформы Windows, что может оказаться привлекательным для корпоративных сетей интранет.
Глава 18
Специальные элементы управления
При разработке приложений Web случаются ситуации, когда доступные мощные инструменты разработки не вполне соответствуют требованиям для определенного проекта. Возможно, что заданный элемент управления работает не вполне так, как это требуется, или раздел кода, предназначенный для повторного использования на нескольких страницах, слишком сложен в руках нескольких разработчиков. В таких ситуациях существуют серьезные доводы в пользу специальных элементов управления. Специальные элементы управления могут, в самом простейшем виде объединить несколько существующих элементов управления вместе, возможно, с дополнительными свойствами, определяющими компоновку, или могут полностью отличаться от любых существующих элементов управления. Использование специального элемента управления настолько же просто, как и использование любого другого элемента управления в ASP.NET, что, конечно, облегчает кодирование web-сайтов.
В прошлом было сложно реализовывать такие специально созданные элементы управления, особенно в крупномасштабных системах, где требовались сложные процедуры регистрации для их использования. Даже в простых системах требования кодирования для создания специального элемента управления могли существенно усложнить процесс. Языки сценариев старых языков разработки Web также страдали от отсутствия возможности предоставить полноценный доступ к искусно созданной объектной модели, что приводило к низкой производительности в целом.
Платформа .NET предоставляет идеальное окружение для создания специальных элементов управления. Динамическое обнаружение сборок, что свойственно системе .NET делает установку на новом сервере Web посредством копирования структуры каталогов, содержащей код, вместе со всеми используемыми DLL. Кроме того, специальное внимание было уделено упрощению создания своих собственных элементов управления с помощью простых технологий программирования.
В этой главе мы рассмотрим два различных вида элементов управления:
□ Элементы управления пользователя — преобразование существующих страниц ASP.NET в элементы управления
□ Специальные элементы управления — объединение функций нескольких элементов управления, расширение существующих элементов управления и создание новых элементов управления с самого начала
Мы проиллюстрируем элементы управления пользователя, преобразовывая приложение предварительного заказа помещения для проведения мероприятий из предыдущей главы в элемент управления пользователя так, чтобы его можно было легко встроить в другие страницы ASP.NET. В случае специальных элементов управления мы создадим элемент управления для выборочного опроса общественного мнения, позволяющий пользователю голосовать за какой-то вариант из списка и видеть, как проходит голосование.
Элементы управления пользователя
Элементы управления пользователя создаются с помощью кода ASP.NET также, как создаются стандартные страницы Web ASP.NET. Различие состоит в том, что после создания элемента управления пользователя его можно повторно применять на множестве страниц ASP.NET с минимальными трудностями.
Например, предположим, что создана страница, которая выводит некоторую информацию из базы данных, возможно, информацию о заказе. Вместо создания фиксированной страницы, которая это делает, можно поместить соответствующий код в элемент управления пользователя и затем вставлять при желании этот элемент управления в множество различных страниц Web.
Кроме того, можно определить свойства и методы для элементов управления пользователя. Например, определить фоновый цвет для вывода таблицы базы данных на странице Web или повторно выполнить запрос к базе данных для проверки изменений.
Давайте создадим простой элемент управления пользователя, обсуждая соответствующие вопросы по мере их появления, и затем скомпонуем его, чтобы увидеть, как можно добавлять методы и свойства.
Простой элемент управления пользователя
В VS.NET создадим новое приложение Web с именем
Когда будут созданы стандартные файлы, выберем пункт меню Project|Add New Item… и добавим Web User Control с именем
Добавленные к проекту файлы с расширениями
Файлы
Просмотр созданных шаблонных файлов открывает еще одно важное отличие: созданный класс наследует из класса