Прайс Кевин Т.
Шрифт:
Серверные элементы управления можно создавать с помощью интегрированной среды разработки Visual Studio .NET.
Завершая сравнение HTML-элементов управления и серверных элементов управления, рассмотрим приведенный ниже фрагмент кода ASP.NET, предназначенного для представления серверного элемента управления, а именно текстового поля txtName.
Этот серверный элемент управления выполняет точно ту же задачу, которую выполняет HTML-элемент управления из приведенного фрагмента кода. Единственным отличием является то, что это текстовое поле обрабатывается Web-сервером.
Дополнительные преимущества технологии ASP.NET
Описанию технологии ASP.NET посвящено множество книг, здесь же описываются два компонента ASP.NET.
Первый компонент связан со свойством IsPostBack. При создании ASPX-файла (или, иначе говоря, Web-формы) ему по умолчанию передаются данные. Свойство IsPostBack используется для того, чтобы избежать появления сообщений об ошибках при отсутствии таких данных на Web-странице, которую пользователь еще даже не успел увидеть. Свойство IsPostBack имеет значение true, если данная Web-страница запрашивается пользователем, либо значение false, если данная Web-страница загружается самостоятельно впервые. Ниже приводится фрагмент кода с примером использования этого метода.
Конечно, ASPX-файл или HTML-файл можно использовать для передачи данных другому ASPX-файлу. Это позволяет создать файл с нужной функциональностью, например переадресовать пользователя после проверки и исправления данных к другой Web-странице с помощью метода Response.Redirect.
Еще одно важное достоинство ASP.NET связано с процессом доставки готового приложения. Для этого достаточно скопировать все файлы с одного компьютера на другой. Конечно, на новом компьютере под управлением Web-сервера Internet Information Server (IIS) нужно также создать новый виртуальный каталог с помощью консоли управления IIS ММС. Для этого выберите команду Start→Settings→Control Panel Administrative Tools→Internet Services Manager (Пуск→Параметры→Панель управления→Административные инструменты→Менеджер Internet-служб), в появившемся окне Internet Information Services (Информационные Internet-службы) выберите узел Default Web Site (Web-узел по умолчанию) и щелкните правой кнопкой мыши на нужном каталоге. Выберите в контекстном меню команду Properties. Появится одноименное диалоговое окно; выберите в нем вкладку Virtual Directory (Виртуальный каталог) или Home Directory (Домашний каталог), в зависимости от используемой операционной системы. Если выбранный каталог не сконфигурирован, то в группе элементов управления Application Settings (Параметры приложения) будет присутствовать кнопка Create (Создать). (В противном случае этой кнопки не будет и тогда следует щелкнуть на кнопке Cancel.) После щелчка на кнопке Create и конфигурирования каталога щелкните на кнопке OK для закрытия диалогового окна. Теперь выбранный виртуальный каталог сконфигурирован как приложение.
Совсем необязательно инсталлировать интегрированную среду выполнения Visual Studio .NET на любом Web-сервере, на который нужно скопировать Web-приложение. Для работоспособности такого Web-приложения нужно только установить платформу .NET Framework, которую можно бесплатно скопировать с Web-узла компании Microsoft по адресу: http://www.microsoft.com.
Доступ к базе данных с помощью ASP.NET
Ядром любого приложения баз данных является база данных. Для использования базы данных необходимо иметь надежный и безопасный способ подключения. На платформе .NET этот способ реализуется с помощью пространства имен System.Data и одной строки подключения.
Учтите, что доступ к данным связан с рядом трудностей. Одна из них заключается в том, что пользователь может не иметь прав доступа к базе данных, включая выполнение запроса на выборку данных. Еще одна часто возникающая проблема связана с сохранением имен и паролей пользователей в простом текстовом файле, который обычно не отображается Web-сервером для внешних пользователей. Например, при просмотре кода ASP-страницы очень редко можно встретить следующие строки:
В примерах данной главы используется параметр TRUSTED_CONNECTION = YES, который означает применение надежного подключения, т.е. пользователь должен быть идентифицирован операционной системой Windows, а аутентифицирующая информация о нем должна храниться в SQL Server. В большинстве практических приложений в SQL Server не принято создавать отдельные учетные записи ASP.NET, если только не требуется ограничить возможности пользователя лишь операциями выборки данных.
Учетная запись ASP.NET используется по умолчанию при анонимных Web-запросах к Web-серверу с инсталлированной средой выполнения платформы .NET.
Включение учетной записи ASP.NET в состав учетных записей SQL Server
Для создания надежного подключения (на основе параметра TRUST необходимо иметь учетную запись операционной системы Windows, которую следует включить в состав учетных записей SQL Server. Кроме того, SQL Server должен быть сконфигурирован так, чтобы разрешалось использовать аутентификацию операционной системы Windows. Хотя большая часть этого процесса уже описана в предыдущей главе, он рассматривается здесь более подробно для демонстрации прямой связи между управлением учетной записью ASP.NET в SQL Server и использованием надежного подключения на основе параметра TRUSTED_CONNECTION. В данном примере рассматривается редкий случай создания отдельной учетной записи ASP.NET в SQL Server для ограничения возможностей пользователя только операциями выборки данных.
1. Откройте программу SQL Server Enterprise Manager, выбрав команду Start→Microsoft SQL Server→Enterprise Manager. Раскройте узел используемой базы данных и узел Security (Безопасность), как показано на рис. 11.1.
Рис. 11.1. Выбор узла Security в программе SQL Server Enterprise Manager
2. Щелкните правой кнопкой мыши на элементе Logins (Учетные записи) и выберите в контекстном меню команду New Login (Создать учетную запись). На экране появится диалоговое окно SQL Server Login Properties – New Login (Свойства учетных записей SQL Server – Создать учетную запись), как показано на рис. 11.2.