Asp технологии разработки


ASP .NET — технология разработки Web-приложений от Microsoft

Технология Active Server Pages .NET (ASP .NET) — один из важнейших компонентов всей архитектуры Microsoft .NET. Обоснование этого утверждения вполне очевидно — ведь стратегической целью .NET объявлено создание инфраструктуры для разработки и функционирования распределенных приложений на базе Интернет-стандартов.

Говоря об Интернет-приложениях, мы традиционно подразумеваем в первую очередь Web-приложения, т. е. такие серверные программы, доступ к которым пользователи получают через Web-браузер. Именно для создания подобных Web-приложений предназначена технология ASP .NET. Однако полезно напомнить, что под определение «распределенные» (в классическом его понимании) гораздо больше подходят системы, реализованные на основе иных механизмов удаленного взаимодействия программных компонентов. Применительно к .NET — это технологии XML Web Services (на базе открытых стандартов) и .NET Remoting (внутренние протоколы Microsoft)*.

*О технологиях Web Services и .NET Remoting см. соответственно статьи в «BYTE/Россия» № 9’2001 и «Remoting.NET, или Удаленное взаимодействие объектов есть», «BYTE/Россия» № 4’2002.

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

В кулуарных разговорах мы довольно часто снисходительно говорим о казалось бы откровенных «ляпах» в тех или иных продуктах. Но что скрывается за этими «прорехами» — недальновидность поставщика, его неспособность к решению технических задач или тонкий стратегический расчет? Впрочем, какое дело нам, пользователям, до бизнес-проблем поставщика — мы ведь лишь выбираем наиболее подходящую технологию. Но все обстоит не так просто, хотя бы потому, что эту технологию приходится увязывать со многими другими вещами. И судьба поставщика нам не безразлична — если он обанкротится, то что мы будем делать с его прекрасной технологией?

Именно в контексте этого соображения мне хотелось бы еще раз обратить внимание на вопрос, который я в той или иной степени затрагиваю во всех своих публикациях по этой тематике: что же такое Microsoft .NET?

От ASP к ASP .NET

В конце 1997 г. Microsoft предложила технологию Active Server Pages (ASP) как средство динамического формирования HTLM-страниц. ASP изначально представляет собой часть сервера Microsoft Internet Information Server. ASP .NET (сначала она называлась ASP+) — это новая версия ASP.

Между ASP .NET и ASP довольно много различий. Конечно же, появилось много новых функций и возможностей. Но самое главное заключается в том, что программный код, который в ASP был включен непосредственно в состав HTML-страницы, теперь выделен в отдельный исполняемый модуль, откомпилированный для среды .NET. А код можно создавать с помощью любого языка программирования .NET.

Впрочем, механизм разделения HTML и программного кода был реализован и в старой версии ASP. Многие Web-разработчики заблуждаются, думая, что ASP связана исключительно с применением VBScript или JavaScript. На самом деле IIS задействует технологию Active Scripting, открытые интерфейсы которой позволяют разрабатывать и подключать произвольные языки сценариев. Именно эта возможность используется в Web-компоненте фирмы «1С», предусматривающем создание ASP-приложений с применением встроенного языка «1С:Предприятие 7.7» (см. «Разработка Web-приложений для «1С:Предприятие», «BYTE/Россия» № 4’2001, с. 48).

Более того, вариант создания Web-приложений, реализованный в Visual Basic 6.0 (см. статью «Visual Basic 6.0 упрощает разработку для Web» по адресу http://www.microsoft.com/rus/msdn/library/kolesov), предполагал как раз отделение программного кода от пользовательского интерфейса (HTML-кода) и оформление его в виде ActiveX DLL. Другое дело, что визуальные средства разработки Web-приложений в VB 6.0, хотя и знаменовали прогресс по сравнению с VB 5.0, но были откровенно слабее того, что предлагается для создания обычных Windows-приложений. Да и сама логика Web-разработки была отнюдь не простой.

Здесь мы подходим к формулировке второй задачи, которая стояла перед создателями Visual Studio .NET: сделать так, чтобы разработка Web-приложений была не сложнее программирования традиционных Windows-приложений и чтобы можно было максимально перенести опыт Windows-разработки в сферу Интернета.

Отметим сразу — обе эти задачи (отделение HTML от исполняемого кода и объединение логики разработки для Web и для Windows) в целом Microsoft решила. Но при этом подчеркнем: вся технология ASP .NET функционирует только в среде .NET.

Простейшее Web-приложение

Давайте посмотрим, как выглядит общая логика разработки простейшего приложения ASP .NET. Запустим Visual Studio .NET и создадим новый проект типа ASP .NET с использованием языка Visual Basic (рис. 1). Откроем окно с панелью инструментов Toolbox, выберем на ней вкладку Web Forms и с ее помощью разместим на форме проекта три элемента управления — Label1, TextBox1 и Button1.

Рис. 1. Выбор проекта Web Application в Visual Studio .NET.

Мы хотим, чтобы при нажатии командной кнопки Button1содержимое текстового поля TextBox1 заносилось в метку Label1. Для этого дважды щелкнем по изображению кнопки и в раскрывшемся окне кода введем программу обработки для события Button1_Click:

Запустим созданный проект на выполнение и убедимся, что он работает, как и было задумано (рис. 2). Как мы видим, разработка Web-приложения практически ничем (по крайнем мере, пока) не отличается от создания традиционной Windows-программы.

Рис. 2. Разработка проекта ASP .NET: на заднем плане — окно со средой разработки VS.NET, на переднем — окно Internet Explorer с созданным нами Web-приложением.

А теперь разберемся, из чего состоит наше простейшее приложение. В правом верхнем углу панели Solution Explorer (рис. 2) мы видим несколько компонентов, но сейчас нас интересует только модуль WebForm1.Aspx, который и является файлом ASP .NET, загружаемым в браузер. Просмотрим его содержимое, открыв вкладку HTML:

Обратите внимание, что модуль WebForm.aspx.vb (кстати, использование «точки» в составном имени файла представляется крайне неудачной идеей — возникает постоянная путаница с самим названием и типом файла) в явном виде никак не отображен в окне Solution Explorer, так как он должен быть однозначно привязан к основному ASPX-файлу.

Итак, мы создали приложение, затратив минимум усилий, однако отметим одно настораживающее обстоятельство: если мы с помощью функции Search попробуем найти созданный файл проекта WebSollution1, то обнаружим около двух десятков (!) каталогов и файлов с различными расширениями. Конечно, можно сослаться на то, что все они были сформированы автоматически. Но подобное обилие созданных модулей и папок, существующих вне нашего контроля (и вне понимания, зачем они нужны), несет в себе скрытую угрозу надежности работы приложения, не говоря уже о проблеме очистки мусора в файловой системе, если нам это приложение больше не понадобится.

Теперь поставим еще один небольшой эксперимент. Добавим в проект одну командную кнопку, но только не из вкладки Web Forms, а из HTML. В ASPX-файле она будет описана таким тегом:

Формирование обрабатывающего кода для кнопки выполняется аналогичным образом (но только сначала нужно правой кнопкой мыши вызвать контекстное меню для этого элемента и указать для него режим Run as Server Control). Однако между двумя вариантами кнопок есть одно принципиальное различие — в обычном HTML-редакторе, например, FrontPage, будут видны только стандартные элементы управления HTML (в нашем случае — одна командная кнопка).

Этот момент представляется очень важным, так как технология разработки Web-приложений, реализованная в VS.NET, принципиально отличается от схемы работы традиционных HTML-редакторов, которые сегодня (пока) не поддерживают работу с отдельными файлами программного кода. Перед искушенными Web-дизайнерами неминуемо возникнет дилемма: воспользоваться мощными средствами программирования VS.NET или богатыми средствами Web-дизайна профессиональных HTML-редакторов?

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

Специальный инструмент разработки приложений ASP .NET

В июле 2002 г. Microsoft выпустила предварительную «технологическую» версию (Technology Preview) специализированного визуального инструмента для разработки ASP .NET — ASP .NET Web Matrix. Ее можно бесплатно загрузить с сайта http://www.asp.net (дистрибутив 1,2 Мбайт). Авторские права на продукт принадлежат Microsoft, но он был разработан не сотрудниками корпорации, а группой независимых специалистов, которая выполняет заказы ASP-подразделения Microsoft в свободное от основной работы время (среди авторов программы встречаются и русские имена).

Первая строка кода проекта была написана ровно за год до выпуска его «технологического» релиза, сейчас в нем около 150 тыс. строк. ASP .NET Web Matrix написан на C# и .NET Framework, пользовательский интерфейс реализован с помощью Windows Forms, доступ к данным — на базе ADO.NET. Некоторая часть ресурсов и служб пакета (в частности, справочная система) размещена на сервере http://www.asp.net, обращение к ним выполняется через механизм XML Web Services.

Конструктор страниц Web Matrix предоставляет интегрированные средства для создания и редактирования баз данных SQL и MSDE. Код ADO.NET для выполнения SQL-запросов и хранимых процедур генерируется автоматически; связывание данных страниц не требует написания кода. С помощью Web Matrix пользователь может встраивать в свои приложения поддержку XML Web Services, разрабатывать мобильные Web-приложения для таких устройств, как сотовые телефоны, пейджеры и PDA. Для разработки и тестирования приложений ASP .NET не требуется сервер IIS — Web Matrix включает облегченный варианта персонального Web-сервера, в котором многие функции (например, поддержка страниц ASP .NET иXML Web Services) реализованы в локальном режиме.

Пакет также обеспечивает поддержку рабочих пространств на основе FTP или обычной файловой системы, без серверных расширений FrontPage. Предусмотрен встроенный порт для общения с внешним миром, в том числе с различными форумами и группами новостей по тематике ASP .NET.

Будучи удобным специализированным инструментом, Web Matrix все же вряд ли сможет заменить Visual Studio .NET при создании профессиональных приложений. Прежде всего Web Matrix (по крайней мере в предварительном «технологическом» варианте) не поддерживает основную для ASP .NET идею разделения кодов. У него существенно слабее средства отладки, нет редактора с интеллектуальной подсказкой, не говоря уже о применении средств категории Enterprise. Продукт не будет поддерживаться службой Microsoft Product Support Services — вся поддержка будет выполняться онлайновым сообществом независимых разработчиков (http://www.asp.net).

Чтобы познакомиться с Web Matrix, создадим с его помощью простое приложение, аналогичное тому, что мы сделали в VS.NET.

Откройте Microsoft ASP .NET Web Matrix — появится диалоговое окно New File, в котором мы видим несколько различных начальных шаблонов проекта (рис. 3). Обратите внимание, что для каждой категории шаблонов, представленных в левом окне (Data Pages, Mobile Pages и пр.), имеется своя группа типов проектов. Выберите шаблон проекта General и ASP .NET Page, а в списке Language укажите Visual Basic, после чего нажмите OK.

Рис. 3. Web Matrix предлагает разные шаблоны для создания Web-приложений.

Со вкладки Web Controls панели инструментов Toolbox перетащите на создаваемую страницу элементы управления Label, TextBox и Button. Двойным щелчком на изображении кнопки перейдите к редактированию ее процедуры Button1_Click. Введите следующий код:

Запустите приложение на выполнение и убедитесь в его работоспособности. Теперь рассмотрим содержание созданного приложения. В среде разработки Web Matrix отсутствует панель Solution Explorer, из чего можно сделать предположение (совершенно справедливое), что весь проект состоит из одного ASPX-файла — в нем нет многочисленных дополнительных компонентов, которые мы видели в VS.NET. Нет здесь и отдельного VB-модуля с программным кодом.

Чтобы убедиться в этом, откроем вкладку All основного окна проекта и посмотрим полное содержание файла NewFile.aspx:

Иными словами, ASPX-файл состоит из двух частей — исполняемого (в данном случае VB) кода и HTML-кода (нет двух отдельных файлов, как это сделано в VS.NET). Для удобства работы с ними мы можем использовать вкладки HTML и Code окна проекта. Что интересно — мы можем загрузить в Web Matrix проект, созданный ранее в VS.NET, и запускать его на выполнение. Но редактирование VB-модуля при этом недоступно.

Впрочем, повторим, что пока мы имеем дело лишь с версией Technical Preview, да и вообще, вряд ли стоит всерьез сравнивать бесплатные продукты и коммерческие системы, являющиеся основой бизнес-стратегии огромной корпорации. Тем не менее Web Matrix вполне годится для обучения и реализации небольших проектов, к тому же в нем реализовано несколько очень интересных идей по организации среды разработки.

ASP .NET — что нас ждет впереди

Эта статья не может претендовать даже на введение в ASP .NET. Данной тематике посвящено не менее двух десятков книг (правда, пока по преимуществу выпущенных в США). Отметим только, что в ASP .NET существенно расширена функциональность ASP, улучшена ее способность создавать сложные масштабируемые Web-приложения (отметим, например, новые функции управления сеансами и администрирования, улучшенные средства безопасности).

Для более детального изучения этих вопросов можно рекомендовать англоязычные ресурсы на серверах http://msdn.microsoft.com и http://www.asp.net, в частности, статьи Cache and Carry with ASP .NET (вопросы кэширования для повышения производительности) и Migrating to ASP .NET. Key Considirations (переход от ASP к ASP .NET).

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

О разделении исполняемого кода и HTML уже говорилось выше. (код можно писать на многих языках программирования, например, Perl, но при условии, что они адаптированы для .NET). Другим принципиальным новшеством технологии ASP .NET стал новый тип компонентов — управляющие элементы Web. Очень важно, что их могут создавать независимые разработчики (причем даже не очень квалифицированные). Тут можно вспомнить, что одной из главных причин успеха VB в начале 90-х годов было создание огромного рынка дополнительных элементов VBX/OCX, которые существенно расширяли возможности самого VB.

Похоже, Microsoft не собирается изменять своим надежным, проверенным методам борьбы за рынок. Кстати, создаваемые с помощью VS.NET новые Web-элементы будут работать только в среде .NET Framework.

Что же такое Microsoft .NET?

Однозначного ответа на этот вопрос просто нет: очень многое зависит от того, для чего и кому мы его задаем. Ответы представителей Microsoft, Sun, «1С» или ИТ-подразделения ЦБ РФ будут мало похожи один на другой. Тут правомерна аналогия с понятием «разработка приложений»: программист, менеджер проекта и руководитель компании, говоря об этом, будут иметь в виду различный круг решаемых задач.

За последний год в связи с темой .NET мне пришлось посетить много презентаций, услышать кулуарных бесед, прочитать немало статей и целый ряд книг. И мне было очень приятно, когда я наконец-то нашел своего полного единомышленника в том, что касается восприятия стратегии Microsoft. Это известный американский разработчик и публицист Дан Эпплман, чья книга «Переход на VB.NET: стратегии, концепции, код» в начале года вышла в переводе на русский в издательстве «Питер».

Я считаю эту работу лучшим систематическим анализом архитектуры .NET и рекомендую познакомиться с ней не только тем, кто собирается иметь дело с .NET (не говоря уже о VB-программистах), но и всем тем, кто предполагает в ближайшие несколько лет иметь дело с ИТ на уровне бизнес-решений.

Современные технологии программирования и вопросы маркетинга переплетены между собой настолько сильно, что из презентаций и статей даже профессионалам трудно сразу понять, где речь идет о реальных технологических новшествах, а где — лишь о новых названиях старых вещей. Я искренне советую всем программистам познакомиться с книгой Эпплмана еще и потому, что в ней через анализ технологий красной нитью проходит обсуждение вопроса «технология и маркетинг». Вот лишь две цитаты из его книги:

«Я искренне верю, что большинство программистов Microsoft стремится написать качественный продукт с единственной целью осчастливить своих коллег-программистов. но я верю и в то, что Microsoft стремится продавать программные продукты и зарабатывать на этом деньги».

«В один прекрасный день выяснилось, что Microsoft начинает отставать от Netscape, Sun и других компаний, занимающихся Интернет-технологиями. Немедленно под фанфары появилась новая технология ActiveX. Что такое ActiveX? Это OLE2 с новым названием».

Поясню: на протяжении более 10 лет деятельность Дана Эпплмана связана с применением технологий Microsoft, он является признанным авторитетом в американском сообществе разработчиков. При этом он подчеркивает: «Противники Microsoft клеймят меня как «продажного наймита», а ее сторонники — осуждают за «злобные нападки». А вот высказывание Эпплмана как раз по поводу обозначенного выше вопроса о сути .NET: «.NET захлестнул тот же поток маркетинговых статей, недостоверных и обрывочных сведений, вольных интерпретаций и неразберихи, от которой пострадали многие инициативы Microsoft. Не думаю, что вы получите сколько-нибудь вразумительный ответ от сотрудников Microsoft — их ответы слишком сильно зависят от должности и от того, какую презентацию PowerPoint им показали последней».

Илон Маск рекомендует:  OuterHTML - чтениезапись dom объекта

Это было написано год назад. Сейчас, спустя полгода после официального выпуска .NET Framework и Visual Studio .NET, ажиотаж по этому поводу явно пошел на убыль. Это естественно: наступило время проверкой делом маркетинговых заявлений «предстартовой» поры. Но неразбериха в ответе на вопрос «Что такое .NET?» сохраняется и даже усиливается.

Сбывается прогноз двухлетней давности — все новые продукты и технологии Microsoft автоматически получают суффикс .NET независимо от сути используемых в них архитектурных решений. Более того, на одной из презентаций прошедшей весной я видел замечательный слайд, на котором к семейству .NET Server были приписаны задним числом все версии Windows 2000.

Возвращаясь к вопросу, вынесенному в заголовок этого раздела, я даю на него ранее уже озвученный ответ: Microsoft .NET с точки зрения программиста — это новая среда исполнения программного кода, (виртуальная машина) под названием .NET Framework. И, говоря о создании Web-приложений, нужно отметить самое главное новшество: в .NET достигнут значительный прогресс в том, чтобы стереть различия между традиционным программированием под Windows и Интернет-разработкой. Но при этом Microsoft, как обычно, идет своим путем.

Другие статьи из раздела

  • Программная платформа IBM для повышения эффективности бизнеса
  • ИБП для защиты серверов
  • Интегрированное решение для защиты центров обработки данных
  • На пути к построению единой платформы защиты данных
  • Виртуализация без ограничений

Поместить в блог

Комментарии к статье

Рекламные ссылки

Chloride
Демонстрация Chloride Trinergy
Впервые в России компания Chloride Rus провела демонстрацию системы бесперебойного электропитания Chloride Trinergy®, а также ИБП Chloride 80-NET™, NXC и NX для своих партнеров и заказчиков.

NEC Нева Коммуникационные Системы
Завершена реорганизация двух дочерних предприятий NEC Corporation в России
С 1 декабря 2010 года Генеральным директором ЗАО «NEC Нева Коммуникационные Системы» назначен Раймонд Армес, занимавший ранее пост Президента Shyam …

компания «Гротек»
С 17 по 19 ноября 2010 в Москве, в КВЦ «Сокольники», состоялась VII Международная выставка InfoSecurity Russia. StorageExpo. Documation’2010.
Новейшие решения защиты информации, хранения данных и документооборота и защиты персональных данных представили 104 организации. 4 019 руководителей …

МФУ Panasonic DP-MB545RU с возможностью печати в формате А3
Хотите повысить эффективность работы в офисе? Вам поможет новое МФУ #Panasonic DP-MB545RU. Устройство осуществляет

Adaptec by PMC
RAID-контроллеры Adaptec Series 5Z с безбатарейной защитой кэша
Опытные сетевые администраторы знают, что задействование в работе кэш-памяти RAID-контроллера дает серьезные преимущества в производительности …

Chloride
Трехфазный ИБП Chloride от 200 до 1200 кВт: Trinergy
Trinergy — новое решение на рынке ИБП, впервые с динамическим режимом работы, масштабируемостью до 9.6 МВт и КПД до 99%. Уникальное сочетание …

Diplom Consult.ru

Цель работы: изучение среды разработки Web-приложений Visual Studio 2005 и элементов диалога. Cоздание динамических страниц. Рассмотрение структуры проекта.

Теоретические сведения

Microsoft .NET Framework — это платформа для создания, развертывания и запуска web-сервисов и приложений. Она предоставляет высокопроизводительную, основанную на стандартах многоязыковую среду, которая позволяет интегрировать существующие приложения с приложениями и сервисами следующего поколения, а также решать задачи развертывания и использования интернет-приложений. .NET Framework состоит из трех основных частей — общеязыковой среды выполнения (common language runtime), иерархического множества унифицированных библиотек классов и компонентной версии ASP, называемой ASP .NET.

ASP .NET — это часть технологии .NET, используемая для написания мощных клиент-серверных интернет-приложений. Она позволяет создавать динамические страницы HTML. ASP .NET возникла в результате объединения более старой технологии ASP (активные серверные страницы) и .NET Framework. Она содержит множество готовых элементов управления, применяя которые, можно быстро создавать интерактивные web-сайты. Вы также можете использовать сервисы, предоставляемые другими сайтами, прозрачно для пользователей вашего сайта. В общем, возможности ASP .NET ограничены только вашим воображением

В 2000 году на конференции разработчиков в качестве части новой технологии .NET Microsoft представила ASP+. С выходом .NET Framework 1.0 она стала называться ASP .NET.

ASP .NET — это не продолжение ASP. Это концептуально новая технология Microsoft, созданная в рамках идеологии .NET. В ASP .NET заложено все для того, чтобы сделать весь цикл разработки web-приложения более быстрым, а поддержку — более простой. ASP .NET основана на объектно-ориентированной технологии, но сохранила модель разработки asp: вы создаете программу и помещаете ее в директорию, выделенную сервером, и она будет работать. В ASP .NET появилось много новых функций, а существовавшие ранее в asp значительно усовершенствованы.

В ASP .NET используются компилируемые языки. Во время компиляции проверяется синтаксическая корректность исходного текста. Скомпилированный в промежуточный язык код выполняется быстрее, и он будет таким же независимо от языка, который мы используем. Компилируемые языки поддерживают строгую типизацию.

Компиляция происходит на сервере в момент первого обращения пользователя к странице. Если программист изменил текст страницы, программа перекомпилируется автоматически. При написании кода можно использовать набор компонентов, поставляемых с .NET.

Платформа .NET Framework предоставляет приложениям среду выполнения, сама непосредственно взаимодействуя с операционной системой. Выше лежит интерфейс ASP .NET-приложений, на котором в свою очередь базируются web-формы (ASP .NET-страницы) и web-сервисы. Интерфейс .NET Framework позволяет стандартизировать обращение к системным вызовам и предоставляет среду для более быстрой и удобной разработки. CLR обеспечивает единый набор сервисов для всех языков.

ASP .NET использует технологию доступа к данным ADO .NET, которая обеспечивает единый интерфейс для доступа к базам данных SQL Server и файлам XML. Кроме того, усиленная модель безопасности позволяет обеспечивать защиту клиента и сервера от несанкционированного доступа.

В 2004 году появилась версия ASP .NET 2.0 (бета-версия, окончательный выход — конец 2005 — начало 2006 гг.). Как утверждается, эта версия позволяет сократить объем кодирования на 70%. Новые возможности версии 2.0 — использование шаблонов дизайна страниц (Master Page), упрощенная локализация web-приложений, более 50 новых серверных элементов управления. Цели, которые преследовали разработчики новой версии, — повысить скорость разработки сайтов, масштабируемость, легкость поддержки и администрирования сайтов, скорость работы сервера. Появилась панель оснастки MMC (консоль управления Microsoft), предоставляющая графический интерфейс для управления настройками ASP .NET. Изменять настройки проекта теперь можно и через web-интерфейс. ASP .NET 2.0 поддерживает работу на 64-битных процессорах. Сервис персонализации (personalization) предоставляет готовое решение для хранения персональных данных, непосредственно характеризующих пользователя сайта, — так называемого профиля пользователя (Profile).

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

Предыдущие версии Visual Studio для проектов ASP .NET требовали наличия на машине разработчика сервера IIS. Теперь сервер встроен в среду разработки.

ASP .NET 2.0 и Visual Studio 2005 предоставляют инструменты для легкого построения локализируемых сайтов, которые определяют предпочитаемый язык пользователя и посылают ему страницы на его языке.

Возможность прекомпиляции позволяет обнаружить ошибки до загрузки страниц на сервер. Можно не хранить исходные страницы aspx на сервере, тем самым защищая свою интеллектуальную собственность.

В ASP .NET 2.0 встроена технология автоматического обновления кэширования баз данных. Данные, полученные из базы, хранятся на сервере, и он не обращается к базе для обработки повторного запроса. При изменении базы данных кэш обновляет свое содержимое.

ASP .NET — это технология, а не язык, и позволяет программировать на разных языках — С#, Visual Basic, J#. «В платформе .NET все языки равны, но некоторые — равнее» (Дж. Оруэлл). Вот таким языком и является С#, потому что он был специально создан для этой платформы. Программирование C# позволяет в полной мере использовать концепции, методы и паттерны объектно-ориентированной разработки. Язык Visual Basic 8.0 наделен почти теми же возможностями. Чтобы научиться ASP .NET, вам нужно знать основы HTML, а знание asp не обязательно. Оно может даже помешать, так как придется менять образ мышления. Также для понимания желательно знать CSS и JavaScript.

LAV_ СИТспец_маг2014-15 / Модуль1_2013-14 / Web-приложения ASP_NET

Разработка Web-приложений ASP .NET с использованием Visual Studio .NET

Принципы работы и структура Web-приложений на основе ASP.NET

Основы работы в Visial Studio .NET

Основы Web-программирования с использованием ASP.NET

Принципы разработки пользовательского интерфейса интернет-приложения

Использование Master Page и навигация при построении интернет-приложений

Навигация по Web-приложению

Использование тем при оформлении Web-приложения

Использование кэширования в Web-приложениях

Использование баз данных в приложениях ASP.NET

Принципы работы и структура Web-приложений на основе ASP.NET

Рассматривается архитектура современных Web-приложений, взаимодействие клиентской и серверной частей таких приложений, принципы их организации в среде ASP.NET

Цель лекции: познакомиться с архитектурой и особенностями организации Web-приложений, особенностями архитектуры ASP.NET и .NET Framework, принципами взаимодействия клиента и сервера при выполнении Web-приложения на основе ASP.NET.

Web-приложения представляют собой особый тип программ, построенных по архитектуре «клиент-сервер». Особенность их заключается в том, что само Web-приложение находится и выполняется на сервере — клиент при этом получает только результаты работы. Работа приложения основывается на получении запросов от пользователя (клиента), их обработке и выдачи результата. Передача запросов и результатов их обработки происходит через Интернет ( рис.1.1).

Рис. 1.1. Архитектура Web-приложения

Отображением результатов запросов, а также приемом данных от клиента и их передачей на сервер обычно занимается специальное приложение — браузер (Internet Expolrer, Mozilla, Opera и т. д.). Как известно, одной из функций браузера является отображение данных, полученных из Интернета, в виде страницы, описанной на языке HTML, следовательно, результат, передаваемый сервером клиенту, должен быть представлен на этом языке.

На стороне сервера Web-приложение выполняется специальным программным обеспечением (Web-сервером), который и принимает запросы клиентов, обрабатывает их, формирует ответ в виде страницы, описанной на языке HTML, и передает его клиенту. Одним из таких Web-серверов является Internet Information Services (IIS) компании Microsoft. Это единственный Web-сервер, который способен выполнять Web-приложения, созданные с использованием технологии ASP.NET.

В процессе обработки запроса пользователя Web-приложение компонует ответ на основе исполнения программного кода, работающего на стороне сервера, Web-формы, страницы HTML, другого содержимого, включая графические файлы. В результате, как уже было сказано, формируется HTML-страница, которая и отправляется клиенту. Получается, что результат работы Web-приложения идентичен результату запроса к традиционному Web-сайту, однако, в отличие от него, Web-приложение генерирует HTML-код в зависимости от запроса пользователя, а не просто передает его клиенту в том виде, в котором этот код хранится в файле на стороне сервера. То есть Web-приложение динамически формирует ответ с помощью исполняемого кода — так называемой исполняемой части.

За счет наличия исполняемой части, Web-приложения способны выполнять практически те же операции, что и обычные Windows-приложения, с тем лишь ограничением, что код исполняется на сервере, в качестве интерфейса системы выступает браузер, а в качестве среды, посредством которой происходит обмен данными, — Интернет. К наиболее типичным операциям, выполняемым Web-приложениями, относятся:

прием данных от пользователя и сохранение их на сервере;

выполнение различных действий по запросу пользователя: извлечение данных из базы данных (БД), добавление, удаление, изменение данных в БД, проведение сложных вычислений;

аутентифицирование пользователя и отображение интерфейса системы, соответствующего данному пользователю;

отображение постоянно изменяющейся оперативной информации и т. д.

Краткое описание архитектуры ASP.NET и .NET Framework

ASP.NET — это платформа для создания Web-приложений и Web-сервисов, работающих под управлением IIS. Сегодня существуют другие технологии, позволяющие создавать Web-приложения. К ним относятся прежде всего, очень популярные сегодня языки PHP и PERL, более старая и менее популярная технология CGI и т. д. Однако ASP.NET отличается от них высокой степенью интеграции с серверными продуктами, а также с инструментами Microsoft для разработки доступа к данным и обеспечения безопасности. Кроме того, ASP.NET позволяет разрабатывать Web- и Windows-приложения, используя очень похожие технологические цепочки, одинаковые языки программирования, технологии доступа к данным и т. д. Более того, базовые языки программирования, с помощью которых сегодня возможна разработка Web-приложений, являются полностью объектно-ориентированными, что делает разработку исполнимой части, а также ее модификацию, обслуживание, отладку и повторное использование гораздо более простым занятием, чем в других технологиях. Существует достаточно большой перечень сильных сторон использования ASP.NET для создания сложных Web-приложений. Целью данного курса не является описание всех сильных и слабых сторон этой платформы.

Заметим лишь, что ASP.NET функционирует исключительно на серверах Windows, так как требует наличия IIS. Для создания Web-приложений, не требующих IIS, а использующих, например, Web-сервер Apache и работающих на серверах под управлением операционных систем, отличных от Windows, применяются другие технологии.

Важным моментом в понимании архитектуры ASP.NET является тот факт, что она является частью инфраструктуры .NET Framework. Более подробно об архитектуре и принципах работы .NET Framework можно узнать в [2]. Так как эта тема является слишком объемной и выходит за рамки данного курса, ограничимся лишь кратким описанием инфраструктуры .NET Framework.

Архитектура .NET Framework

Как утверждает корпорация Microsoft, до 80% средств, направленных на исследования и разработки, тратится на платформу .NET и связанные с ней технологии. Результаты такой политики на сегодняшний день выглядят впечатляюще. Так, область охвата платформы .NET просто огромна. Платформа состоит из четырех групп программных продуктов:

набор языков, куда входят С# и Visual Basic .NET; набор инструментальных средств разработки, в том числе Visual Studio .NET; обширная библиотека классов для построения Web-служб и приложений, работающих в Windows и в Интернете; а также среда выполнения программ CLR (Common Language Runtime — общеязыковая среда выполнения), в которой выполняются объекты, построенные на этой платформе;

набор серверов .NET Enterprise Servers, ранее известных под именами SQL Server 2000, Exchange 2000, BizTalk 2000 и др., которые предоставляют специализированные функциональные возможности для обращения к реляционным базам данных, использования электронной почты, оказания коммерческих услуг «бизнес-бизнес» (В2В) и т. д.;

богатый выбор коммерческих Web-служб, называемых .Net My Services. За умеренную плату разработчики могут пользоваться этими службами при построении приложений, требующих идентификации личности пользователя и других данных;

новые некомпьютерные устройства, поддерживающие средства .NET, — от сотовых телефонов до игровых приставок.

Microsoft .NET поддерживает не только языковую независимость, но и языковую интеграцию. Это означает, что разработчик может наследовать от классов, обрабатывать исключения и использовать преимущества полиморфизма при одновременной работе с несколькими языками. Платформа .NET Framework предоставляет такую возможность с помощью спецификации CTS (Common Type System — общая система типов), которая полностью описывает все типы данных, поддерживаемые средой выполнения, определяет, как одни типы данных могут взаимодействовать с другими и как они будут представлены в формате метаданных .NET. Например, в .NET любая сущность является объектом какого-нибудь класса, производного от корневого класса System.Object. Спецификация CTS поддерживает такие общие понятия, как классы, делегаты (с поддержкой обратных вызовов), ссылочные и размерные типы.

Важно понимать, что не во всех языках программирования .NET обязательно должны поддерживаться все типы данных, которые определены в CTS. Спецификация CLS (Common Language Specification — общая языковая спецификация) устанавливает основные правила, определяющие законы, которым должны следовать все языки: ключевые слова, типы, примитивные типы, перегрузки методов и т. п. Спецификация CLS определяет минимальные требования, предъявляемые к языку платформы .NET. Компиляторы, удовлетворяющие этой спецификации, создают объекты, способные взаимодействовать друг с другом. Любой язык, соответствующий требованиям CLS, может использовать все возможности библиотеки FCL (Framework Class Library — библиотека классов платформы). CLS позволяет и разработчикам, и поставщикам, и производителям программного обеспечения не выходить за пределы общего набора правил для языков, компиляторов и типов данных.


Платформа .NET Framework является надстройкой над операционной системой, в качестве которой может выступать любая версия Windows 1) . На сегодняшний день платформа .NET Framework включает в себя:

четыре официальных языка: С#, VB.NET, Managed C++ (управляемый C++) и JScript .NET;

объектно-ориентированную среду CLR (Common Language Runtime), совместно используемую этими языками для создания приложений под Windows и для Internet;

ряд связанных между собой библиотек классов под общим именем FCL (Framework Class Library).

Отношения архитектурных компонентов платформы .NET Framework с концептуальной точки зрения представлены на рис.1.2.

Рис. 1.2. Архитектура .NET Framework

Самым важным компонентом платформы .NET Framework является CLR (Common Language Runtime), предоставляющая среду, в которой выполняются программы. Главная ее роль заключается в том, чтобы обнаруживать и загружать типы .NET и производить управление ими в соответствии с полученными командами. CLR включает в себя виртуальную машину, во многих отношениях аналогичную виртуальной машине Java. На верхнем уровне среда активизирует объекты, производит проверку безопасности, размещает объекты в памяти, выполняет их, а также запускает сборщик мусора.

Под сборкой мусора понимается освобождение памяти, занятой объектами, которые стали бесполезными и не используются в дальнейшей работе приложения. В ряде языков программирования (например, C/C++) память освобождает сам программист, в явной форме отдавая команды как на создание, так и на удаление объекта. В этом есть своя логика — «я тебя породил, я тебя и убью». Однако в CLR задача сборки мусора (и другие вопросы, связанные с использованием памяти) решается в нужное время и в нужном месте исполнительной средой, ответственной за выполнение вычислений.

На на рис.1.2. над уровнем CLR находится набор базовых классов платформы, над ним расположены слой классов данных и XML, а также слой классов для создания Web-служб (Web Services), Web- и Windows-приложений (Web Forms и Windows Forms). Собранные воедино, эти классы известны под общим именем FCL (Framework Class Library). Это одна из самых больших библиотек классов в истории программирования. Она открывает доступ к системным функциям, включая и те, что прежде были доступны только через API Windows, а также к прикладным функциям для Web-разработки (ASP.NET), доступа к данным (ADO.NET), обеспечения безопасности и удаленного управления. Имея в своем составе более 4000 классов, библиотека FCL способствует быстрой разработке настольных, клиент-серверных и других приложений и Web-служб.

Илон Маск рекомендует:  Вложенные селекторы

Набор базовых классов платформы — нижний уровень FCL — не только прячет обычные низкоуровневые операции, такие как файловый ввод/вывод, обработка графики и взаимодействие с оборудованием компьютера, но и обеспечивает поддержку большого количества служб, используемых в современных приложениях (управление безопасностью, поддержка сетевой связи, управление вычислительными потоками, работа с отражениями и коллекциями и т. д.).

Над этим уровнем находится уровень классов, которые расширяют базовые классы с целью обеспечения управления данными и XML. Классы данных позволяют реализовать управление информацией, хранящейся в серверных базах данных. В число этих классов входят классы SQL (Structured Query Language, язык структурированных запросов), дающие программисту возможность обращаться к долговременным хранилищам данных через стандартный интерфейс SQL. Кроме того, набор классов, называемый ADO.NET, позволяет оперировать постоянными данными. Платформа .NET Framework поддерживает также целый ряд классов, позволяющих манипулировать XML-данными и выполнять поиск и преобразования XML.

Базовые классы, классы данных и XML расширяются классами, предназначенными для построения приложений на основе трех различных технологий: Web Services (Web-службы), Web Forms (Web-формы) и Windows Forms (Windows-формы). Web-службы включают в себя ряд классов, поддерживающих разработку облегченных распределяемых компонентов, которые могут работать даже с брандмауэрами и программами трансляции сетевых адресов (NAT). Поскольку Web-службы применяют в качестве базовых протоколов связи стандартные протоколы HTTP и SOAP, эти компоненты поддерживают в киберпространстве подход «Plug & Play».

Инструментальные средства Web Forms и Windows Forms позволяют применять технику RAD (Rapid Application Development — быстрая разработка приложений) для построения Web- и Windows-приложений. Эта техника сводится к перетаскиванию элементов управления с панели инструментов на форму, двойному щелчку по элементу и написанию кода, который обрабатывает события, связанные с этим элементом.

Компиляция и язык MSIL

.NET-приложения исполняются иначе, чем традиционные Windows-приложения. Такие программы компилируются фактически в два этапа. На первом этапе исходный код компилируется во время построения проекта и вместо исполняемого файла с машинными кодами получается сборка 2) (assembly), содержащая команды промежуточного языка MSIL (Microsoft Intermediate Languageпромежуточный язык Microsoft). Код IL сохраняется в файле на диске. При этом файлы MSIL (сокращенно IL), генерируемые компилятором, например, С#, идентичны IL-файлам, генерируемым компиляторами с других языков .NET. В этом смысле платформа остается в неведении относительно языка. Самой важной характеристикой среды CLR является то, что она общая; одна среда выполняет как программы, написанные на С#, так и программы на языке VB.NET.

Второй этап компиляции наступает непосредственно перед фактическим выполнением страницы. На этом этапе CLR транслирует промежуточный код IL в низкоуровневый собственный машинный код, выполняемый процессором. Процесс происходит следующим образом: при выполнении .NET-программы системы CLR активизирует JIT-компилятор, который затем превращает MSIL во внутренний код процессора. Этот этап известен как оперативная компиляция «точно к нужному моменту» (Just-In-Time) или JIT-компиляция (JIT’ing), и он проходит одинаково для всех приложений .NET (включая, например, приложения Windows). При исполнении программы CLR берет на себя управление памятью, контроль типов и решает за приложение ряд других задач. На рис.1.3. показан этот двухэтапный процесс компиляции.

Рис. 1.3. Схема компиляции .NET-приложения

Стандартный JIT-компилятор работает по запросу. Когда вызывается тот или иной метод, JIT-компилятор анализирует IL-код и производит высокоэффективный машинный код, выполняемый очень быстро. JIT-компилятор достаточно интеллектуален, чтобы распознать, был ли код уже скомпилирован, поэтому во время выполнения программы компиляция происходит лишь при необходимости. По ходу своего выполнения .NET-программа работает все быстрее и быстрее, так как повторно используется уже скомпилированный код.

Спецификация CLS подразумевает, что все языки платформы .NET генерируют очень похожий IL-код. Кроме того, при компилировании программы в дополнение к MSIL формируется еще один компонент — метаданные. Они описывают данные, используемые программой, и это позволяет коду взаимодействовать с другим кодом. В результате объекты, созданные на одном языке, доступны и могут наследоваться на другом. То есть можно создать базовый класс на языке VB.NET, а производный от него класс — на языке С#.

В целом при написании приложения создается так называемый управляемый код (managed code), который выполняется под контролем среды исполнения CLR-приложения, не зависящей от языка. Поскольку приложение запускается под контролем CLR, управляемый код должен соответствовать определенным требованиям (т. е. компилятор должен создать MSIL-файл, предназначенный для CLR, а также использовать библиотеки .Net Framework 3) ), при выполнении которых он получает множество преимуществ, включая современное управление памятью, способность совмещать языки, высокий уровень безопасности передачи данных, поддержку контроля версии и понятный способ взаимодействия компонентов программного обеспечения 4) .

Таким образом, компиляция .NET делится на два этапа с целью предоставления разработчикам удобных условий и мобильности. Перед созданием низкоуровневого машинного кода компилятору необходимо знать, в какой операционной системе и на каком базовом оборудовании будет функционировать приложение. Благодаря двум этапам компиляции можно создать скомпилированную сборку с кодом .NET и распределить ее более чем на одну платформу.

Конечно, компиляция не будет столь полезна, если ее выполнение будет необходимо каждый раз при запросе пользователем Web-страницы. К счастью, приложения ASP.NET не нужно компилировать всякий раз при запросе Web-страницы или Web-службы. Вместо этого код IL создается один раз и повторно генерируется только при изменении исходного кода. Подобным образом файлы собственного машинного кода кэшируются в системном каталоге с путем вроде С:\[WinDir]\Microsoft.NET\ Framework\[Version]\Temporary ASP.NET Files, где WinDir является каталогом Windows, a Version — номером установленной в данный момент версии .NET.

Каждое Web-приложение, разрабатываемое на основе ASP.NET состоит из информационной части, программного кода и сведений о конфигурации.

Информационная часть содержит статические и динамические элементы страницы и реализуется в виде Web-форм. Статические элементы представляют собой типичные элементы языка HTML, динамические же компонуются программным кодом приложения во время его выполнения (например, запросы к базе данных).

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

Сведения о конфигурации представляют собой файлы, содержащие параметры, определяющие способ исполнения приложения на сервере, параметры безопасности, реакцию приложения на возникающие ошибки и т. д.

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

На рис.1.4. представлен пример простейшей страницы Web-приложения, содержащего всего лишь один элемент — кнопку. Как видно из рисунка, основой страницы является тело стандартного HTML-документа, внутри которого находится элемент form, а также кнопка button. Кроме того, в начале документа здесь присутствуют некоторые дополнительные элементы, которые будут рассмотрены позднее.

Рис. 1.4. Пример простейшей страницы Web-приложения

При запуске приложения данная страница отображается в окне браузера и выглядит следующим образом (рис.1.5.).

Рис. 1.5. Отображение страницы Web-приложения в окне браузера

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

Рис. 1.6. Файл, содержащий программный код Web-страницы

На самом деле при разработке Web-приложений на основе ASP.NET возможны два варианта организации Web-форм.

В первом случае весь код информационной части и программная часть хранятся в одном файле с расширением .aspx. Программный код при этом помещается в так называемые блоки сценариев. При этом со- храняется возможность использования всех принципов современного программирования, таких как реакция на события элементов управле- ния, подпрограммы и т.д. Эту модель целесообразно использовать при со- здании простых Web-приложений, поскольку в этом случае все хранится в одном пакете.

Во втором случае каждая Web-страница разделяется на две части: Web-форму и файл, содержащий программный код. При этом форма, как и в первом случае, сохраняется в файле с расширением .aspx, а программный код — в файле с расширением .cs. Такая модель обеспечивает лучшую организацию элементов Web-приложения за счет отделения пользовательского интерфейса от программной логики.

В примере, рассмотренном ранее, Web-страница разделена на две части, при этом форма и программный код хранятся в разных файлах.

В следующем примере, изображенном на рис.1.7., показана аналогичная предыдущей Web-страница, в которой форма и программный код объединены в одном файле.

Рис. 1.7. Пример Web-формы, содержащей описание формы и программный код в одном файле

Изучив этот пример, можно описать типовой сценарий взаимодействия элементов Web-приложения друг с другом и с клиентом, осуществляющим запрос формы этого приложения (рис 1.8).

Рис. 1.8. Типовой сценарий взаимодействия элементов Web-приложения с клиентом

Как видно из рис.1.8, при обращении клиента к Web-приложению последнее запускается на сервере IIS. Запущенное приложение формирует отклик. Для этого на сервере создается экземпляр запрошенной Web-формы, она генерирует HTML-текст отклика, который и передается браузеру клиента. Сразу после этого экземпляр Web-формы уничтожается. Пользователь, получив HTML-страницу, сгенерированную приложением, имеет возможность заполнять различные поля формы (тестовые поля, переключатели и т. п.). После заполнения всех необходимых полей формы пользователь инициирует отправку данных, введенных им в страницу, обратно на сервер. Это происходит за счет использования технологии обратной отсылки, которая вызывается при выполнении определенных действий (например, нажатия на кнопку). Получив данные от пользователя, сервер создает новый экземпляр Web-формы, заполняет его полученными данными и обрабатывает все необходимые события. По окончании обработки сервер формирует HTML-код ответа и отправляет его клиенту, а затем уничтожает экземпляр Web-формы. Более подробно описанный сценарий изображен на рис. 1.9 и 1.10

Рис. 1.9. Подробный сценарий взаимодействия элементов Web-приложения с клиентом при первом запросе

Рис. 1.10. Подробный сценарий взаимодействия элементов Web-приложения с клиентом при запросе обратной отсылки

В момент окончания работы с Web-приложением пользователь либо закрывает браузер, либо переходит на другую интернет-страницу. В этот момент завершается сеанс работы пользователя с данным приложением, однако само приложение может быть завершено сервером не сразу после окончания последнего сеанса работы пользователя. Это связано с управлением распределением памяти платформой .NET Framework, которая основана на периодической проверке ссылок объектов. Если в результате такой проверки обнаружится, что объект больше не используется, сервер уничтожает его, освобождая таким образом занимаемую им память. Поэтому нельзя точно сказать, когда именно наступит событие Application_End для данного Web-приложения.

Такой принцип организации выполнения Web-приложений хорошо подходит для масштабируемых приложений с интенсивным сетевым обменом. Однако у него есть и недостатки. В частности, оказывается невозможным сохранять данные, принадлежащие форме, даже в течение работы пользователя с приложением. Т. е. если мы захотим создать некую переменную, хранящую, например идентификатор заказа, с которым мы в данный момент работаем, сделать это будет невозможно, т. к. форма после отправки клиенту сразу же уничтожается. Чтобы обойти этот недостаток, ASP.NET использует специальный механизм для сохранения данных, введенных в элементы управления Web-формы. Согласно этому принципу, в рамках каждого запроса на сервер отправляются все данные, которые были введены в элементы управления. При этом, как уже упоминалось выше, на сервере возникает событие Page_Init, целью которого является создание Web-формы и ее инициализация. В процессе инициализации в элементы управления созданной формы записываются переданные от клиента данные. Теперь эти данные становятся доступны приложению посредством обработки события Page_Load, возникающего при каждом обращении к странице.

Для лучшего понимания процесса взаимодействия пользователя с Web-приложением рассмотрим последовательность событий, возникающую при обращении клиента к странице приложения.

Итак, при запросе страницы прежде всего инициируется событие Page_Init, которое производит начальную инициализацию страницы и ее объекта. В рамках обработки данного события программист может разместить код, осуществляющий начальную инициализацию страницы. Тем не менее это событие нельзя использовать для инициализации элементов управления, размещенных на странице, так как они еще не созданы.

После этого инициируется событие Page_Load. Большинство Web-страниц используют это событие для выполнения инициализации, например, заполнения полей данными, установки начальных значений для элементов управления и т. д. Кроме того, в процедуре обработки данного события возможно определение того, была ли загружена страница впервые или обращение к ней осуществляется повторно в рамках технологии обратной отсылки, произошедшей в результате нажатия пользователем кнопки либо другого элемента управления, размещенного на странице. В английской терминологии обратная отсылка данных на сервер называется post back. Для определения текущего состояния страницы необходимо проверить свойство Page.IsPostBack, которое будет иметь значение false при первом запуске страницы. Определение того, производится ли первое обращение к данной странице либо повторное, важно, так как позволяет производить инициализацию только в том случае, когда страница запрашивается впервые. Так, например, при обратной отсылке данных на сервер не только нет необходимости производить инициализацию, устанавливая начальные значения элементов управления, но это даже может быть ошибкой, так как эти элементы управления должны получить значения, переданные им от пользователя. В дальнейшем, в случае, если для страницы была произведена обратная отсылка, вызываются события элементов управления, размещенных на странице. Эти события запоминаются в тот момент, когда пользователь производил действия с элементами управления в окне браузера, а при передаче данных на сервер исполняются по порядку.

После вызова события Page_Load происходит так называемая проверка достоверности страницы. Необходимость такой проверки возникает тогда, когда пользователь ввел в элементы управления, расположенные на странице, данные, которые впоследствии необходимо сохранить или использовать для обработки. В идеале проверка достоверности должна происходить на стороне клиента, чтобы пользователь был проинформирован о проблемах с вводом данных перед их отправкой на сервер, т. к. это позволяет уменьшить объем информации, передаваемой по сети, и ускорить процесс обмена данными с сервером. Однако, независимо от того, была ли произведена проверка достоверности данных на стороне клиента или нет, ее необходимо осуществлять и на стороне сервера. Осуществление проверки достоверности — достаточно сложная задача. Сложность эта обусловлена различием моделей клиентского и серверного программирования. В ASP.NET существует несколько элементов управления проверкой достоверности. Они выполняют автоматическую клиентскую и серверную проверку. В случае, если проверка достоверности выявила ошибки во введенных данных, ASP.NET уведомит об этом пользователя и не позволит осуществлять дальнейшую работу со страницей до устранения ошибок. Более подробно организация проверки достоверности рассматривается в лекции 5.

Следующим шагом обработки Web-формы является обработка всех событий, инициированных пользователем с момента последней обратной отсылки. Для иллюстрации этого приведем пример.

Пусть у нас существует страница с кнопкой (Button) «Отправить» и текстовым полем (TextBox) без автоматической обратной отсылки. При изменении текста в текстовом поле и щелчке на кнопке «Отправить» инициируется обратная отправка данных страницы на сервер (этого не произошло при изменении текста в текстовом поле, так как соответствующая опция этого элемента управления AutoPostBack установлена в false). В момент обратной отправки страницы на сервер ASP.NET запускает следующие события:

В результате обработки всех инициированных событий генерируется HTML-код страницы, который и передается клиенту, после чего выполняется Очистка, в рамках которой инициируется событие Page_Unload. Оно предназначено для освобождения ресурсов, занятых данной страницей. Событие Page.PreRender инициируется после того, как сервер обработал все события страницы, но генерация ее HTML-кода еще не произошла. Обычно это событие используется ASP.NET для привязки элементов управления к источникам данных непосредственно перед созданием HTML-кода и отправкой его клиенту.

Описанная последовательность событий позволяет создать описание жизненного цикла Web-страницы, изображенного на рис 1.11.

Рис. 1.11. Жизненный цикл страницы ASP.NET

Вернемся, однако, к проблеме сохранения данных страницы в промежутке между обращениями к ней. Для реализации этого механизма в ASP.NET используются состояния отображения (view state). Состояние отображения Web-формы доступно только внутри этой Web-формы. Если необходимо сделать данные, введенные в Web-форму, доступными другим Web-формам одного и того же приложения, эти данные необходимо сохранить в объектах с более глобальной областью видимости, которые называют переменными состояния. Объектов переменных состояний два: Application и Session. Переменные состояния Application доступны всем пользователям приложения и могут рассматриваться как глобальные переменные, обращение к которым возможно из любых сеансов. Переменные состояния Session доступны только в рамках одного сеанса, и поэтому они оказываются доступными только одному пользователю. В переменных состояния можно хранить данные любого типа. В силу того, что переменные состояния фактически являются глобальными переменными, для работы с ними желательно выработать стратегию их использования в приложении.

Более подробно работа с состояниями отображения и переменными состояния будет рассмотрена в разделе «Класс Page» в лекции 2.

Web-приложения представляют собой особый тип программ, основанных на архитектуре «клиент-сервер». Web-приложение располагается и исполняется на сервере, получая от клиента исходные данные для работы, а также передавая ему результаты работы в виде HTML-кода, отображаемого в браузере.

Существует несколько технологий разработки информационных систем, ориентированных на Интернет. Одной из наиболее мощных технологий является ASP.NET. Web-приложения, разработанные на основе ASP.NET работают исключительно в среде IIS платформы Windows. ASP.NET является частью инфраструктуры .NET Framework. Данная архитектура является основой для построения современных приложений, ориентированных на работу в среде Windows, и может использовать любой из совместимых языков программирования для написания программного кода. Особенностью .NET Framework является то, что различные модули одной и той же программной системы могут быть написаны на различных языках программирования. Одним из важнейших элементов данной архитектуры является наличие сборщика мусора, осуществляющего очистку неиспользуемых областей памяти и избавляющего программиста от проблемы «утечки памяти».

Каждое Web-приложение ASP.NET состоит из 3 частей: информационной, программного кода и сведений о конфигурации. Информационная часть включает в себя описание страницы в формате HTML и содержит как элементы языка гипертекстовой разметки документа, так и элементы ASP.NET. Программный код реализует бизнес-логику, оформленную в виде процедур обработки данных. Этот код исполняется сервером и взаимодействует с динамическими элементами информационной части, позволяя динамически формировать содержимое страницы, передаваемой клиенту. Сведения о конфигурации содержат параметры, определяющие способ исполнения приложения на сервере, параметры безопасности, реакцию на возникающие ошибки и др.

Илон Маск рекомендует:  Что такое код swfmorph >getshape1

Типовой сценарий взаимодействия Web-приложения с другим Web-приложением и с клиентом выглядит следующим образом: клиент посылает запрос на открытие страницы Web-приложения, Web-сервер осуществляет запуск приложения, создает экземпляр запрашиваемой клиентом формы, исполняет программный код, связанный с формой, формирует HTML-текст отклика, который и передает браузеру клиента, после чего уничтожает Web-форму. Пользователь просматривает переданную ему сервером страницу, при необходимости вводит данные в расположенные на ней поля ввода и инициирует их отправку на сервер. Сервер создает новый экземпляр формы приложения, заполняет поля данными, полученными от клиентского компьютера, формирует HTML-текст отклика и передает его клиенту.

1) Благодаря архитектуре среды CLR в качестве операционной системы может выступать любая версия Unix и вообще любая ОС. 2) Сборка (assembly) – это коллекция файлов, которая предстает перед программистом в виде единой библиотеки динамической компоновки (DLL) или исполняемого файла (EXE). В технологии .NET сборка является базовой единицей для повторного использования, контроля версий, защиты и развертывания. Среда CLR представляет программисту ряд классов, позволяющих манипулировать сборками. 3) Библиотека классов .NET открывает доступ ко всем возможностям CLR. Классы, составляющие эту библиотеку, организованы при помощи пространств имен. Каждое пространство имен заключает в себе классы, выполняющие близкие функции. 4) Альтернативой управляемому коду является неуправляемый код, который не выполняется CLR. Однако до появления .NET Framework все Windows-программы использовали именно неуправляемый код.

Разработка web-приложений с использованием технологии ASP.Net MVC

Web-приложения разработанные по технологии ASP.Net MVC в отличии от Web Forms приложений, состоят не из набора классов производных от класса Раде (web-форм), которые включают серверные элементы управления, а из классов трех типов:

  • контроллеры (Controller) – классы, включающие методы (действия), которые могут быть вызваны с помощью запроса пользователя к приложению;
  • представления (View) – задаются в виде шаблона, на основе которого генерируются специальные классы описывающего формирование HTML-ответы пользователю;
  • модели классы разных типов, содержащие данные, которые передаются от контроллеров в представления для формирования ответов.

Особенность технологии MVC состоит в том, что пользователь указывает в URL-адресе не путь к физическому ресурсу (например, *.html или *.aspx), а запрос на выполнение некоторого действия – открытого (public) метода класса-контроллера. Например: myprog.ru/Home/lndex/5 (такому URL никакой ресурс не соответствует). Порядок обработки таких запросов классами MVC-приложения показан на рис. 4.23.

Рис. 4.23. Порядок обработки запроса к MVC-приложению

Общая логика работы ASP.Net MVC приложения показана на рис. 4.24.

Рис. 4.24. Логика работы ASP.Net МVС приложений

Если сравнить данную схему с логикой работы ASP.Nel Web Forms приложений (рис. 4.1), то видно, что они во многом сходны (это два фреймворка технологии ASP.Net). У приложений, созданных с использованием фреймверков ASP.Net Web Forms и MVC, имеются общие возможности: конфигурирование; обеспечение безопасности (классы по работе с учетными записями и ролями); поддержка состояния сеанса и приложения; кэширование. В принципе, в одной приложении можно использовать возможности обоих фреймверков.

Отличие ASP.Net Web Forms и MVC между заключается только в использовании другого МТТР-обработчика. Данный обработчик создает требуемый контроллер и вызывает указанный метод.

В ASP.NET MVC разработчик имеет почти те же самые функциональные возможности по созданию web-приложений, какие есть и в Web Forms, но они реализуются с помощью другого набора инструментов. Фреймвер ASP.NET MVC использует другой шаблон, который не основывается на web-формах (Раде) и полагается на много более тонкий слой абстракции. В результате у разработчика нет сложных, встроенных компонент для быстрого создания пользовательского интерфейса, в котором элементы могут поддерживаться.

В ASP.NET MVC разработчик пишет код, который концептуально и физически ближе к базовым Интернет технологиям; поэтому он требует большего объема программирования, но в тоже время дает ему больше контроля над формируемым FITML-кодом и реальным поведением среды выполнения приложения. Однако, разработчик не должен все писать с нуля. Он имеет в своем распоряжении

  • • HTML-помощьники (helpers) для автоматического создания (достаточно) простых, но функциональных средств визуализации и редактирования для любых простых и сложных типов;
  • • атрибуты классов (дополнительные метаданные) для аннотирования данных, для декларативного задания требуемого содержания полей и способов их представления;
  • • средства связывания для автоматического преобразования передаваемых в запросе данных с параметрами методов-действий контроллеров;
  • • средства (тоже на основе атрибутов) для проверки вводимых пользователями данных, как на стороне клиента, так и на стороне сервера.

Разработка Web-приложения с применением технологии ASP.NET

Рубрика: Информационные технологии

Дата публикации: 03.02.2014 2014-02-03

Статья просмотрена: 983 раза

Библиографическое описание:

Допира Р. И., Попова Н. В., Базикова К. М. Разработка Web-приложения с применением технологии ASP.NET // Молодой ученый. — 2014. — №2. — С. 84-87. — URL https://moluch.ru/archive/61/9185/ (дата обращения: 12.11.2020).

В статье рассматриваются возможности применения технологии ASP.NET, позволяющей создавать динамические Web-страницы. Разработанный стартовый проект содержит данные о предприятиях и организациях Карагандинской области, предоставляемых ими вакансиях, и позволяет осуществить динамический поиск.

В Республике Казахстан активно развивается сфера информационных услуг, предоставляемых через Internet. Web-приложения — это специальный вид приложений, разработанных для глобальной сети. При запуске Web-приложения происходит генерирование HTML-кода, загрузка изображений, клиентских сценариев, таблиц стилей и других ресурсов. По запросу пользователя может быть загружен сохраненный на сервере статический документ HTML или генерация кода HTML происходит в процессе обработки запроса от клиента. Динамический контент позволяет разработать Web-приложение интерактивным. Разработка Web-приложений существенно отличается от разработки типичного приложения. Во-первых, Web-приложения исполняются на сервере, а во-вторых, не сохраняют состояния после обработки запросов пользователей. Поэтому при построении Web-приложения разработчик должен определить способы хранения информации о пользователе, организовать сеансы работы пользователя, способы переходов от страницы к странице. Перечисленные задачи считаются стандартными и одинаково решаются для большинства Web-приложений. Реализация этих задач вынесена в отдельные технологии, которые называются технологиями для разработки Web-приложений. В Казахстане чаще всего используются следующие технологии: Flash, Microsoft ASP.NET, Java Server Pages, Personal Home Page. При использовании любой из перечисленных технологий, остается основное преимущество Web-приложений над традиционными, которое заключается в процессе развертывания. Для реализации проекта Web-приложение нужно разместить на сервере и дать ссылку на него всем пользователям, а в случае изменения программного кода потребуется обновить код только на сервере. Для загрузки Web-приложения на компьютеры пользователей требуется больше времени, но встроенные механизмы оптимизации кода позволяют получить более эффективный исполняемый код, а процесс компиляции придает гибкость и универсальность приложениям.NET.

Для организации динамически обновляемой информации на Web-страницах необходимо использование и ведения баз данных, а именно обязательное применение языка SQL. В зависимости от выбранной платформы проекта в настоящее время чаще всего используются MySQL, Oracle, Microsoft SQL Server. SQL Server в сочетании с.NET Framework уменьшает время разработки и внедрения современных приложений, ускоряет процесс поиска данных, упрощает управление сайтом, позволяет использовать создаваемые классы в других приложениях, предоставляет широкие возможности для создания Web-приложений. Для доступа к данным.NET Framework использует технологию ADO.NET, которая позволяет работать с данными, как с логически информационными сущностями. В среде Misrosoft Visual Studio 2010 можно осуществить проектирование классов, на основе реляционных данных, определить структуру таблиц базы данных и их отношений.

Для создания приложения «Вакансии» была выбрана технология ASP.NET, которая содержит высокоуровневые концепции, необходимые для разработки высокопроизводительных Web-приложений. Любая технологическая платформа предлагает разработчику определенные стиль и подходы к разработке приложений. Основной задачей было создать приложение, в котором содержатся основные требования, предъявляемые к соискателям вакантных мест. Зачастую к одной и той же должности руководители предприятий и организаций предъявляют различные требования. Приложение содержит не только данные требований, но и позволяет осуществить поиск по названию должности, с учетом предъявляемых к данной должности требований. Пользователь на основании своей квалификации, знаний и умений, может подобрать вакантные места на предприятиях Карагандинской области.

Созданное Web-приложение содержит горизонтальное меню навигации, состоящее из пунктов: «Главная», «Сотрудники», «О разработчике». На главной странице находятся сведения об организациях и предприятиях Карагандинской области, зарегистрированных на сайте (рисунок 1). По каждому из столбцов данных предусмотрена сортировка. При выборе организации можно просмотреть предлагаемый список вакансий. В информации о вакансии содержится перечень требований, предъявляемых к претенденту на данном предприятии.

Рис. 1. Главная страница Web-приложения «Вакансии»

На странице «Сотрудники» представлен список зарегистрированных в системе претендентов на вакантные места. Регистрируясь в системе, пользователь оставляет данные о своей квалификации, об опыте работы, знаниях и умениях, о желаемых должностях и контактную информацию. Если в системе уже имеется информация о вакансии с соответствующими требованиями, то пользователь получит название предприятия и его контактную информацию. При заполнении формы о вакансиях на предприятии, указываются требования, при наличии в системе соискателя удовлетворяющего данным требованиям, работодатель получит контактную информацию о соискателе. Разработанное Web-приложение «Вакансии» позволяет не просто просмотреть имеющиеся данные, но и осуществляет динамический поиск во время регистрации или по указанным критериям.

На главной странице находятся ссылки «Вход» и «Регистрация». При нажатии ссылки «Вход» открывается окно, с помощью которого можно зарегистрироваться в системе, как предприятиям, так и соискателям вакантных мест.

Для клиентской и серверной проверки ввода данных пользователя в технологии ASP.NET используют шесть элементов управления user input validation [1]. Элементы управления проверкой достоверности объявляют в Web-форме и привязывают к элементу управления вводом данных пользователя. Свойства элементов управления user input validation определяет разработчик, это упрощают процесс проверки достоверности, и избавляет программиста от необходимости писать длинный код.

Если пользователь Web-приложения не имеет аккаунта в системе, ему предлагается зарегистрироваться. Пользователь последовательно заполняет форму с проверкой корректности данных (рисунок 2). Если данные будут не корректными, то пользователь в систему не будет добавлен. При сохранении данных пользователя происходит проверка на наличие в базе данных аналогичного аккаунта, если произойдет совпадение, то пользователю будет предложено изменить свои данные. После создания аккаунта пользователь выбирает раздел «Сотрудники» или «Организации» в котором он может оставить соответствующую информацию о себе.

Рис. 2. Регистрация в системе

Разработка Web-приложения «Вакансии» была выполнена в среде Misrosoft Visual Studio 2010 [2]. На рисунке 3 представлена часть кода приложения. Проект содержит страницы в формате.aspx, две базы данных, плагины jquery (для визуальных эффектов), таблицу стилей [3]. Две базы данных необходимы для организации разделения уровня доступа.

Рис. 3. Окно разработки Web-приложения «Вакансии»

Любое Web-приложение нуждается в обновлении информации, для этого создается блок администратора, из которого легко можно отредактировать, добавить, удалить устаревшую информацию или просто обновить существующие пункты. Административная часть Web-приложения — это часть сайта, предназначенная для настройки работы сайта, редактирования текстовой и графической информации (контента). Вход в административную часть сайта доступен не всем пользователям, т. к. является защищенной страницей Web-приложения от сторонних пользователей. Пользователи, как представитель организации, так и соискатель вакансии, могут регистрироваться в системе, просматривать информацию, осуществлять поиск по выбранным критериям.

В настоящее время в Казахстане использование технологии ASP.NET находиться на начальном этапе. Основные проекты `Web-разработки выполнены на PHP и Java. Таким образом, возможности технологии ASP.NET позволили свободно использовать стандартные библиотеки и классы.NET, объектно-ориентированное программирование, создавая свои собственные функциональные элементы, безопасность типов. Разработанное Web-приложение «Вакансии» является стартовым проектом, позволяющим оперативно найти информацию о вакансиях и помочь в трудоустройстве.

Проект содержит информацию о предприятиях и организациях только по Карагандинской области. Планируется разместить информацию о приложении в поисковых системах и включить данные о предприятиях и организациях других регионов Казахстана. Мы надеемся, что созданное Web-приложение «Вакансии» вместе с программами, которые разрабатывает и поддерживает государство, внесет свой вклад в решение проблемы устройства на работу граждан Республики Казахстан, в соответствии с их призванием и личными потребностями, с учетом их способностей, образования и профессиональной подготовки.

1. Мэтью Мак-Дональд, Адам Фримен, Марио Шпушта. Microsoft ASP.NET 4 с примерами на C# 2010 для профессионалов. Издательство: Вильямс, 2011.

2. Алекс Макки. Введение в.NET 4.0 и Visual Studio 2010 для профессионалов. Издательство: Вильямс, 2010.

3. Шилдг Герберт. Полный справочник по С# 4.0. Пер. с англ. — Издательство: Вильямс, 2011.

Почему ASP.NET не используют в крупных компаниях?

В настоящий момент С# (asp.net) имеет целый ряд преимуществ над тем, что нам дает Java (в плане удобства и синтаксиса языка). Это правда!

Проблема заключается в том, что Java появился раньше, Java был открытым для использования на Linux. В итоге под сервера на Java написали огромный список уникальных решений, которые сейчас используют топовые команды (посмотри, что такое хадуп, например). В итоге, компании либо не видели смысла переписывать все на C#, так как уже имели билды на Java, либо не хотели тратить время на разработку того, что уже есть на Java.

Именно по этой причине Microsoft сейчас активно начинает спариваться с Linux и везде кричит, что они его любят.

ASP хостинг

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

В 1997 году Microsoft презентовал 3-ю версию веб-сервера – Internet Information Server, в его основу был заложен совершенно новый способ написания серверных приложений. Этот метод получил название ASP (в переводе с английского данная аббревиатура означает – «активные серверные страницы»). Данный способ основан на использовании программных интерфейсов сервера, а также представляет собой функциональное расширение веб-сервера Microsoft.

По своей сути ASP представляют собой обычные текстовые файлы, в основном имеющие расширением asp. Они содержат конструкции HTML-языка, а также сценарии, написанные на VBScript и/или JScript, которые выполняются на сервере вместе с обычным кодом HTML.

Главное преимущество технологии ASP состоит в том, что благодаря ее использованию можно выполнять сценарии на сервере. Благодаря данным сценариям можно получить быстрый доступ к базам данным, файлам и многим другим ресурсам, хранящимся на сервере. Также технология ASP позволяет получить доступ к факс-службе или электронной почте.

Большим достоинством выполнения сценариев на сервере является надежная работа в управляемой и непротиворечивой среде. Это объясняется тем, что код пользователя используется не на большом количестве версий нескольких браузеров, а только на одной версии одного сервера. Этим и достигается кросс-платформенная совместимость.

Содержащиеся в страницах ASP сценарии подразделяются на серверные и клиентские. Их отличие состоит в следующем: выполнение серверных сценариев осуществляется специальным образом и этот процесс происходит на сервере, а клиентские сценарии, наряду с HTML-страницей, загружаются на компьютер пользователя и функционируют под управлением браузера, тем самым исключается возможность выполнения деструктивных действий на стороне пользователя.

Компании из нашего рейтинга, предлагают услугу ASP, наличие которой как правило, указано в тарифном плане. Ну а для обучения рекомендуем данный раздел на сайте Майкрософт.

Asp технологии разработки

SameSite — это расширение файлов cookie HTTP 2020 года, предназначенное для предотвращения подделки межсайтовых запросов (CSRF). Первоначально его дизайн представлял из себя дополнительную функцию, которую можно использовать, добавив новое свойство SameSite в файлы cookie. У него было два значения, Lax и Strict.

При установке значения Lax подразумевается, что куки должны отправляться при серфинге по одному сайту или через GET серфинг на ваш сайт с других сайтов. Значение Strict ограничивало cookie запросами, исходящими только от одного сайта. Отсутствие установки какого-либо свойства не накладывает никаких ограничений на то, как cookie может работать в запросах. Операции аутентификации OpenIdConnect (например, вход в систему, выход из системы) и другие функции, которые отправляют POST-запросы с внешнего сайта на сайт, запрашивающий операцию, могут использовать файлы cookie для корреляции и/или защиты CSRF. Эти операции должны были бы отказаться от SameSite, не устанавливая свойство вообще, чтобы гарантировать, что эти куки будут отправлены во время их специализированных потоков запросов (specialized request flows).

Сейчас Google обновляет стандарт и внедряет предложенные изменения в будущую версию Chrome. Изменение добавляет новое значение SameSite «None» и изменяет поведение по умолчанию на «Lax». Это ломает OpenIdConnect logins и, возможно, другие функции, на которые может опираться ваш веб-сайт. Эти функции должны будут использовать файлы cookie, для свойства SameSite которых установлено значение «None».

Однако браузеры, которые придерживаются первоначального стандарта и не знают о новом значении, ведут себя иначе, чем браузеры, которые используют новый стандарт. Это означает, что ваш веб-сайт .NET теперь должен будет добавить сниффинг пользовательского агента (user agent sniffing), чтобы решить, отправлять ли вы новое значение None или не отправлять атрибут вообще.

Документация по ASP.NET

ASP.NET Core — это кроссплатформенная среда .NET на основе исходного кода для создания современных облачных веб-приложений в Windows, macOS или Linux.

Узнайте о преимуществах ASP.NET Core и ASP.NET и выберите ту платформу, которая подходит именно вам.

Начало работы с ASP.NET Core

Создайте свое первое приложение ASP.NET Core на любой платформе всего за 5 минут.

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

Узнайте о новых концепциях в ASP.NET Core и как они помогают разрабатывать современные веб-приложения.

Справочник по интерфейсам API

Изучите библиотеку классов ASP.NET Core.

Общие сведения ASP.NET Core MVC

Узнайте, как создавать веб-приложения и API-интерфейсы с помощью конструктивного шаблона MVC.

ASP — Технологии разработки

Архитектура Microsoft Windows Distributed interNet Application (Windows DNA) является динамическим набором технологий, которые можно использовать для построения веб-приложений. С помощью Windows 2000 корпорация Майкрософт добавила к этой архитектуре несколько ключевых аспектов.

Этот раздел содержит следующие сведения:

  • Служба компонентов: Описание службы, используемой для разработки компонентов и приложений.
  • Динамический HTML: Обсуждение языка Dynamic Hypertext Markup Language (DHTML).
  • Windows Script Components: Описание использования компонентов COM с помощью языков написания сценариев.
  • XML: Описание расширенного языка разметки (Extensible Markup Language — XML).
  • Active Directory Service Interfaces: Обсуждение интерфейсов Active Directory Service Interfaces (ADSI) и их использование с помощью IIS.
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL