Опубликован: 24.11.2006 | Доступ: свободный | Студентов: 688 / 23 | Оценка: 4.46 / 4.54 | Длительность: 17:18:00
Лекция 2:

Веб-формы ASP.NET

< Лекция 1 || Лекция 2: 12345 || Лекция 3 >

ASP.NET предлагает самый современный набор инструментов и технологических решений для разработки расширяемых веб-приложений. Редактором для программирования на базе ASP.NET является Visual Studio .NET. Приложения ASP.NET могут создаваться на различных языках программирования. Как правило, это языки Visual Basic и C#, и в данной лекции мы будем работать с языком C#.

Visual Basic представляет собой популярный язык программирования для разработки программ на платформе Microsoft. Компания Microsoft расширяла возможности и опции языка Visual Basic до выпуска шестой версии без ущерба обратной совместимости. Версия 7 пакета Visual Basic поставляется с Visual Studio .NET; поддержка наследственности версий языка в ней упразднена. Фрагмент кода VB6 невозможно скомпилировать в Visual Basic .NET (версия 7). Visual Basic .NET имеет мощные функциональные возможности, например, реальное наследование, что делает его настоящим языком объектно-ориентированного (ОО) программирования.

Следует отметить, что стили языков C++, Java и JavaScript оказывают сильное влияние на сообщество веб-программистов, поэтому в качестве языка программирования для интернета нужен язык с похожим стилем. Язык С#, новый язык от Microsoft в пакете Visual Studio .NET, обладает преимуществами языков типа C++ и Java, устраняя их недостатки. Итак, язык C# будет использоваться в данной лекции для демонстрации разработки веб-форм ASP.NET.

Программистам VB потребуется изучить синтаксис нового языка и некоторые элементы его архитектуры для перехода к работе со средой разработки Visual Studio .NET Integrated Design Environment (IDE), и работа с языком C# расширит навыки программирования. Язык C# специфичен для технологии Microsoft, то же самое можно сказать и о Visual Basic. Тем не менее, C# соответствует конвенции, знакомой разработчикам, программирующим на Java.

Обзор архитектуры интернет-форм

Расширением файла страницы веб-формы ASP.NET является .aspx, и в этой лекции такой тип файлов называется ASPX. Каждая веб-форма ASP.NET имеет связанный с ней класс. Классы файла ASPX содержатся в файле кода формы, который называется Codebehind. Имя файла Codebehind указывается следующим образом: <имя_файла>.aspx.<расширение_языка>, где <имя_файла>имя файла ASPX, <расширение_языка> – двухсимвольное расширение, отражающее язык файла Codebehind. Если файл ASPX называется Webform.aspx, то файл Codebehind имеет вид Webform.aspx.cs для языка C# и Webform.aspx для языка Visual Basic. Файл ASPX содержит визуальные элементы веб-формы, а файл Codebehind содержит логику, согласно которой эта форма функционирует. Все файлы Codebehind компилируются в динамически подключаемые библиотеки (DLL), отгружаемые на сервер вместе с соответствующими страницами ASPX. Библиотеке DLL проекта по умолчанию присваивается имя проекта.

При запросе ASPX в IIS страница обрабатывается посредством расширения ISAPI ASP.NET aspnet_isapi.dll. Технология .NET генерирует еще одну временную библиотеку DLL на основе ASPX во время первого запроса файла. Эта DLL содержит класс, наследуемый от соответствующего класса веб-формы, сгенерированного в файле Codebehind, и располагается в библиотеке DLL проекта (см. рис. 2.1).

Такая система существенно обобщает бизнес-логику и логику представления по сравнению с абстракцией, предлагаемой архитектурой ASP. Файл Codebehind содержит бизнес-логику, а ASPX – логику представления веб-формы.

Обзор архитектуры веб-форм ASP.NET

Рис. 2.1. Обзор архитектуры веб-форм ASP.NET

Возможности этих двух файлов усиливают уровень абстракции логики представления и бизнес-логики. Файлы ASPX – это файлы XML, содержащие элементы HTML и элементы управления серверной части для создания HTML. Программист может внедрять бизнес-логику в файлы ASPX, но на это ему придется затратить дополнительные усилия. Файлы Codebehind – это файлы с кодом, и разместить в них логику представления гораздо сложнее, чем использовать файлы ASPX. В ASP абстракция бизнес-логики и логики также представляет собой сложный процесс, поэтому в ASP логика представления и бизнес-логика объединяются при разработке программного решения.

Начало работы с Visual Studio .NET

Откройте Visual Studio .NET. Вы увидите начальную страницу, если ее отображение разрешено. Как и в предыдущей версии Visual Studio, по умолчанию предоставляется шаблон проекта (эту возможность можно отключить). Создадим новый проект веб-форм ASP.NET.

  1. Нажмите на кнопку New Project (Создать проект) в окне шаблона проекта, чтобы открыть окно New Project (Создание проекта) с перечнем типов проектов и соответствующими шаблонами.
  2. В списке слева выберите Visual C# Projects (Проекты Visual C#) – справа отобразятся шаблоны проектов, соответствующие C#.
  3. Выберите шаблон проекта ASP.NET Web Application (Веб-приложение ASP.NET).
  4. Введите свое имя проекта, отличное от имени в текстовом поле. Укажите имя сервера, задав URL (см. рис. 2.2) или путь UNC к корневому веб-каталогу. В URL укажите имя сервера по умолчанию localhost, если разрабатываемое программное решение располагается на рабочей станции во время написания кода и модульного тестирования. В нашем примере указано имя SimpleWF.
  5. Нажмите на кнопку OK. Vusual Studio .NET подключится к несущему серверу и сгенерирует файлы проекта. Visual Studio.NET вносит изменения на веб-сервере через порт 80, создавая новый виртуальный каталог, связанный с файловым каталогом, в котором находятся файлы проекта веб-формы. Если на порте 80 отсутствует веб-сервер IIS, или если IIS не работает, то Visual Studio .NET не сможет сгенерировать проект веб-приложения.
Присвоение имени проекту веб-приложения ASP.NET SimpleWF

Рис. 2.2. Присвоение имени проекту веб-приложения ASP.NET SimpleWF

При успешном подключении Visual Studio .NET к серверу, указанному в окне New Project (Создание проекта), по умолчанию генерируются следующие файлы:

  • AssemblyInfo.cs ;
  • Global.asax ;
  • Global.asax.resx ;
  • SimpleWF.csproj ;
  • SimpleWF.csproj.webinfo ;
  • SimpleWF.vsdisco ;
  • Web.Config ;
  • WebForm1.aspx ;
  • WebForm1.aspx.cs ;
  • WebForm1.aspx.resx.

После создания веб-формы на узле редактор отобразит пустую веб-форму с именем WebForm1, готовую для редактирования (см. рис. 2.3).

Для редактирования веб-форм в Visual Studio .NET используется дизайнер веб-форм (Web Forms Designer). Он позволяет переходить из представления формы в представление HTML для отображения кода XML и HTML с помощью кнопки HTML в левом нижнем углу окна веб-формы.

Веб-форма в представлении Design (Дизайн) дизайнера веб-форм

увеличить изображение
Рис. 2.3. Веб-форма в представлении Design (Дизайн) дизайнера веб-форм

Обратное переключение легко осуществляется посредством кнопки Design (Дизайн), расположенной рядом с кнопкой HTML. Дизайнер веб-форм является довольно гибким компонентом и отображает изменения, вносимые вручную в представлении HTML. Файл ASPX редактируется в любом представлении дизайнера веб-форм – все вносимые изменения равнозначны.

< Лекция 1 || Лекция 2: 12345 || Лекция 3 >
Александр Шнайдман
Александр Шнайдман
Израиль, Тель Авив