ASP. NET. — это часть технологии. NET, используемая


















l2_asp.net.ppt
- Количество слайдов: 16
ASP.NET. - это часть технологии .NET, используемая для написания мощных клиент-серверных интернет приложений. Она позволяет создавать динамические страницы HTML. ASP.NET возникла в результате объединения более старой технологии ASP (активные серверные страницы) и .NET Framework. Она содержит множество готовых элементов управления, используя которые можно быстро создавать интерактивные web-сайты. Вы также можете использовать сервисы, предоставляемые другими сайтами, прозрачно для пользователей вашего сайта. Статическая страница содержит код на языке гипертекстовой разметки HTML. То есть при просмотре в браузере она будет нести в себе точно ту же информацию, что была в нее записана в момент создания, и переданные пользователем данные не могут быть использованы для модификации содержимого отображаемых ему страниц: он сможет увидеть только то, что предварительно было записано в конечный набор файлов. Динамическими принято называть web-страницы, которые перед отправкой клиенту проходят цикл обработки на сервере. В самом простом случае это может быть некоторая программа, которая модифицирует запрашиваемые клиентом статические страницы, используя параметры полученного запроса и некоторое хранилище данных. Динамические страницы могут подстраиваться под конкретного пользователя, а также реагировать на его действия в браузере. Каким же образом? Для этого придумано множество технологий. Например, того, чтобы идентифицировать пользователя и сохранить его настройки для данного сайта, применяются файлы-cookies.
Существуют языки, способные динамически изменять содержимое веб-страницы. С одной стороны, это языки скриптов, выполняющиеся непосредственно у клиента. Примеры скриптовых языков - JavaScript и VBScript. Скрипты на этих языках встроены в код HTML, который сервер посылает браузеру. Сценарии, выполняемые на стороне клиента, выделяются тегами . Браузер интерпретирует этот код и показывает пользователю результат. Сам код можно просмотреть через View Source браузера. Естественно, эти программы не могут быть большими. Например, если нужно выполнить поиск в базе данных, мы не может отправить пользователю все ее содержимое. Но скрипты могут проверить правильность запроса, введенного в форму, тогда не придется перезагружать сервер обработкой неправильных запросов. Динамическая веб-страница должна быть создана «на лету» программой, исполняющейся на интернет-сервере. Широко применяются механизм шлюзов CGI(Common Gateway Interface). Вначале пользователь получает статическую страницу с формой. Тег FORM имеет атрибут ACTION. Именно он задает адрес (URL) исполняемого приложения. На сервере находятся исполняемые файлы программ, написанных, например на C/С++, которые по протоколу HTTP принимают данные из входного потока или из переменных окружения и записывают в стандартный выходной поток готовую страницу. Скриптовый язык, исполняющиеся на стороне сервера – php.
Приложения ASP.NET компилируются на язык MSIL точно также, как и другие приложения .NET. Это означает, что у нас появляется возможность описывать их на тех же языках программирования, что и остальные приложения .NET. Другим огромным преимуществом ASP.NET является использование управляющих элементов на стороне сервера. В ASP также имелась возможность включать управляющие элементы HTML (такие, как кнопки и другие элементы форм) в создаваемые страницы, однако делать это приходилось вручную, а реагировать на любой ввод пользователя в такие элементы (например, пользователь щелкнул мышью на кнопке) можно было либо с помощью выполнения сценария JavaScript на клиентской стороне, либо повторно отправляя страницу серверу. ASP.NET использует технологию доступа к данным ADO.NET, которая обеспечивает единый интерфейс для доступа к базам данных SQL Server и файлам XML. Кроме того, усиленная модель безопасности позволяет обеспечивать защиту клиента и сервера от несанкционированного доступа.
ASP.NET - один из компонентов .NET Framework. Основные черты этой технологии: Общеязыковая исполнительная среда CLR Библиотека классов .NET Framework Языки.NET(C#, VB.NET, J# и другие) ADO.NET ASP.NET Web-службы Промежуточный язык MSIL (Microsoft Intermediate Language). Это ассемблер для среды выполнения CLR.
Обычно приложение ASP.NET можно разбить на набор компонентов: · Web-формы (страницы .aspx). Обеспечивают пользовательский интерфейс Web-приложения; · страницы code-behind - программный код для Web-форм; · файлы конфигурации. Для каждого Web-приложения предусмотрен файл Web.config, для всего Web-сервера - machine.config. · файл global.asax - код для реагирования на события уровня приложения, которые генерируются ASP.NET. · ссылки на Web-службы - они позволяют Web-приложениям отправлять и принимать данные от XML Web-служб. · совместимость с базами данных - позволяют Web-приложениям передавать данные к источникам и от них; · кэширование - позволяет Web-приложениям возвращать Web-формы и данные более быстро после первого запроса.
Обычный механизм работы приложения ASP.NET выглядит следующим образом: · броузер клиента генерирует запрос HTTP GET; · парсер ASP.NET интерпретирует код источника; · если код еще не откомпилирован в DLL, ASP.NET вызывает компилятор; · среда выполнения выполняет код на языке MSIL и возвращает скомпилированный код HTML в броузер пользователю.
В окне Solution Explorer (по умолчанию в верхней правой части экрана) можно просмотреть набор проектов, которые относятся к вашему решению, набор файлов в вашем проекте, а также выполнить с ними различные действия (перетаскиванием или через контекстное меню).
Если рассмотреть страницу ASP.NET с точки зрения объектной модели, то каждая страница является классом, который в свою очередь является наследником базового класса Page. С другой стороны в структуре проекта страница ASP.NET представляется двумя файлами – файлом разметки (.aspx) и файлом с программным кодом (.cs или .vb). Типы файлов ASP.NET aspx – Web-страницы ASP.NET ascx – средства управления asmx – Web-службы web.config – конфигурационный файлы global.asax – глобальный файл приложения vb, cs – файлы раздельного кода bin – каталог сборок приложения
Toolbox. В нем для приложений ASP.NET 2.0 предусмотрено 7 разделов: · HTML — стандартные элементы управления HTML (как серверные, так и клиентские); · Standard — серверные элементы управления, используемые в ASP.NET; · Data - для создания подключений к источникам данных; · Validation — элементы управления, относящиеся к проверке информации, вводимой пользователем; · Navigation — специальные элементы управления, предназначенные для навигации по сайту; · Login — элементы управления, которые используются для аутентификации пользователя на сайте; · Web Parts — специальные элементы управления, которые используются для предоставления пользователю возможности настраивать Web-сайт "под себя".
Физически работа системы ASP.NET выглядит так: пользователь обращается к Web-странице (по умолчанию для нее в ASP.NET используется расширение .aspx); среды выполнения определяет, где находится программный код для этой страницы (сборка dll, представляющий код из страницы codebehind) и запускает сборку на выполнение; промежуточный код на языке MSIL в сборке генерируется в обычный двоичный (native) код, который и выполняется; в результате выполнения создается код HTML, который возвращается пользователю в броузер.
Одной из самых важных возможностей ASP.NET по сравнению с обычной системой ASP является то, что программный код можно писать на обычных языках программирования .NET — Visual Basic.NET, C#, J#, а не на скриптовых, таких, как VBScript и JScript. В результате в нашем распоряжении появляются все возможности обычных языков программирования. Кроме того, в обычном ASP программный код должен был размещаться вместе с разметкой HTML на Web-странице. В ASP.NET такая возможность также оставлена, но обычно код HTML теперь размещается на отдельной странице. В Solution Explorer страница HTML представлена в виде контейнера. Работа с классами в ASP.NET В проектах ASP.NET совершенно необязательно помещать весь программный код в страницы codebehind. Если есть вероятность, что код может потребоваться использовать одновременно на нескольких страницах, или код просто получается достаточно сложным, есть смысл поместить его в отдельный класс. Первый способ — создать новый модуль класса непосредственно в проекте ASP.NET. Это проще всего сделать, щелкнув правой кнопкой мыши по строке проекта (самой верхней строке) в Solution Explorer, выбрав в контекстном меню Add New Item (Добавить новый элемент) и в предложенном списке выбрав Class. Другой способ — создать новый проект Visual Studio .NET и воспользоваться шаблоном Class Library. Обычно такой способ выбирается тогда, когда создаваемый вами класс может потребоваться нескольким проектам ASP.NET одновременно.
Добавление ссылок на пользовательские классы .NET Framework, Web-службы и COM-компоненты Очень часто возникает необходимость использовать в вашем приложении ASP.NET программный код, который был создан вами или другим разработчиком. При этом можно выделить три ситуации: · в проект необходимо добавить код в виде сборки .NET; · в проект необходимо добавить ссылку на Web-службу; · в проект необходимо добавить ссылку на объект COM. Для добавления ссылки на сборку .NET или COM-компонент необходимо щелкнуть правой кнопкой мыши по строке проекта в Solution Explorer и в контекстном меню выбрать Add Reference.
Если нужно добавить ссылку на Web-службу, то придется использовать команду Add Web Reference из контекстного меню для проекта. В открывшемся окне необходимо будет ввести адрес URL для Web-службы
Пространства имен библиотеки классов Visual Studio.NET и VWD по умолчанию включают в страницу на C# наиболее часто используемые пространства имен. На страницу aspx импортировать эти пространства имен не требуется. using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; Например, в пространстве имен System.Web.UI находится класс Page, без которого не может существовать ни одна страница ASP.NET, в System.Web - HttpRequest и HttpResponse.
Пространство имен