Программирование >>  Asp.net 

[ 1 ] 2 3 4 ... 13


ASP.NET - часть среды .NET Framework, и представляет собой технологию, позволяющую динамически создавать документа: на Web-сервере, когда они запрашиваются по протоколу HTTP. Главным образом, речь идет о hTmL- и XHTML-документах, хотя также возможно создавать документа: XML, файлы каскадных таблиц стилей (CSS), изображения, документе! формата PDF или что-то еще, что поддерживает типы MIME.

В некотором роде ASP.NET подобно многим другим технологиям - таким как PHP, ASP или ColdFusion. Однако имеется одно ключевое отличие - ASP.NET, что должно быть понятно по ее названию, разработана как полностью интегрированная составляющая .NET Framework, часть которой включает поддержку C#.

Возможно, вы уже знакомы с технологией Active Server Pages (ASP), которая позволяет создавать динамическое содержимое для Web. Если это так, то, вероятно, вы знаете, что при программировании в этой технологии используются сценарные языки, такие как VBScript и JScript. Результат не всегда блестящий - по крайней мере, для тех, кто имеет опыт работы с правильными компилирующими языками программирования, и почти всегда связан со снижением производительности.

Одним главным отличием, связанным с применением более развитых языков программирования, является обеспечение полноценной объектной модели на стороне сервера для использования во время выполнения. ASP.NET предоставляет доступ ко всем элементам управления страницы как к объектам в многофункциональном окружении. На стороне сервера вы получаете доступ ко всем классам .NET, что позволяет интегрировать множество полезных служб. Элементы управления, размещаемые на страницах, предлагают богат1й набор функциональности; фактически, вы получаете возможность делать почти все то, что делают классы Windows Forms с их невероятной гибкостью. ASP.NET, генерирующие содержимое HTML, часто называют Web Forms (Web-формы).

В этой главе мы детально рассмотрим технологию ASP.NET, включая то, как она работает, что можно делать с ее помощью и как в нее вписывается язык C#. Ниже следует краткий обзор тех вопросов, которые будут рассмотрены в настоящей главе:

□ введение в ASP.NET;

□ как создаются Web-формы ASP.NET с помощью серверных элементов управления;



□ как осуществляется привязка данных к элементам управления ASP.NET посредством ADO.NET;

□ конфигурирование приложений.

Введение в ASP.NET

Для доставки содержимого в ответ на HTTP-запросы ASP.NET взаимодействует с информационным сервером Internet (Internet Information Server - IIS). Страницы ASP.NeT находятся в файлах .aspx. На рис. 37.1 показана базовая архитектура этой технологии.

HTTP-запрос ресурса .aspx

Web-сервер IIS

Ресурс, сгенерированный ASP.NeT в ответ на HTTP-запрос


Обработка ресурса

Страница ASP.NET в ресурсе .aspx

.aspx сервером

Результат обработки .aspx

База данных

Другие ресурсы


Операционная система .NET Framework

Рис. 37.1. Базовая архитектура технологии ASP.NET

Во время обработки ASP.NET вы имеете доступ к классам .NET, пользовательским компонентам, созданным на C# и других языках, базам данных и т.д. Фактически, в вашем распоряжении находится весь арсенал, доступный приложениям C#; использование C# в ASP.NET дает эффект работающего приложения C#.

Файл ASP.NET может содержать:

□ инструкции обработки для сервера;

□ код на C#, Visual Basic .NET, JScript .NET или любом другом языке, поддерживаемом .NET Framework;

□ содержимое в любой подходящей форме для генерируемого ресурса, такого как HTML;

□ сценарный код клиентской стороны, например, JavaScript;

□ встроенные серверные элементы управления ASP.NET.

Таким образом, вы можете иметь файл ASP.NET, настолько простой, как показан

ниже:

Hello!

Это просто даст результат в виде возвращенной HTML-страницы (поскольку HTML - это вывод по умолчанию страниц ASP.NET), которая содержит представленный выше текст.



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

Управление состоянием в ASP.NET

Одно из ключевых свойств страниц ASP.NET состоит в том, что они в действительности не поддерживают концепцию состояния. По умолчанию никакая информация не сохраняется на сервере между пользовательскими запросами (хотя, как мы увидим позже, есть методы, чтобы сделать это). На первый взгляд это выглядит несколько странно, поскольку управление состоянием - нечто такое, что выглядит обязательным условием для дружественных к пользователю интерактивных сеансов. Однако ASP.NET предлагает способ обойти эту проблему, так что управление сеансом становится почти прозрачным.

Короче говоря, информация о состоянии элементов управления Web Forms (включая данные, введенные в текстовые поля, или выбор в выпадающих списках) сохраняются в скрытых полях viewstate (состояние представления), являющихся частью сгенерированной сервером и переданной пользователю страницы. Следующие друг за другом действия, такие как возбуждение событий, требующих обработки со стороны сервера, вроде отправки данных формы, инициируют передачу этой информации обратно на сервер, что называется postback (обратной отправкой). На сервере эта информация используется для повторного наполнения объектной модели страницы, что позволяет работать, как будто изменения были выполнены локально.

Вскоре мы увидим все это в действии и разберем в деталях.

ASP.NET Web Forms

Как упоминалось ранее, бсльшая часть функциональности ASP.NET достигается с применением Web Forms. Прежде чем погрузиться в детали, попробуем создать простую Web-форму, чтобы получить некоторое начальное представление перед изучением этой технологии. Сначала в этом разделе мы представим обзор некоторых ключевых моментов, относящихся к проектированию Web-форм. Следует отметить, что некоторые разработчики ASP.NET просто используют текстовый редактор - вроде Notepad - для создания файлов. Мы не являемся сторонниками такого подхода, потому что те преимущества, которые дают такие интегрированные среды разработки, как Visual Studio или Web Developer Express, весьма существенны, однако стоило упомянуть и такой способ, поскольку он вполне допустим. Если вы изберете такой путь, то сможете гибко организовывать размещение частей вашего Web-приложения по файлам. Это позволит вам, например, скомбинировать весь код в одном файле, если заключать код в элементы <script>, используя два атрибута в открывающем дескрипторе:

<script language= c# runat= server >

Здесь размещается код серверной стороны. </script>

Атрибут runat= server здесь является ключевым, поскольку инструктирует механизм ASP.NET выполнять этот код на сервере вместо отправки его клиенту, таким образом, предоставляя в ваше распоряжение богатые возможности, упомянутые ранее. В блоки серверной стороны можно помещать функции, обработчики событий и тому подобное.

Если вы пропустите атрибут runat= server , то это будет означать код клиентской стороны, который даст сбой, если станет использовать кодирование в стиле серверной стороны, обсуждаемое далее в настоящей главе. Тем не менее, вы можете использовать элементы <script> для того, чтобы создать сценарий клиентской стороны на таких языках, как JavaScript.



[ 1 ] 2 3 4 ... 13

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика