Назад
Создание прибыльного бизнеспроекта на базе сайта

SEO + ASP.NET 4.0 + БИЗНЕСМОДЕЛЬ = ПРИБЫЛЬНЫЙ САЙТ

Инструмент быстрого построения прибыльного онлайн бизнеса своими силами без капиталовложений за 4 месяца все подробности на SEO + ASP.NET 4.0.

Подписка на рассылку

МАГИЯ C#!

Создание вебсайта с формой автоматического приема онлайн платежей по WebMoney!
Ваше имя
Ваш e-mail
Уроки по ASP.NET c# ADO.NET
     

18 видеоуроков
более 5 часов
по созданию сайта,
выполняющего
продажи ваших продуктов (физических/электронных) на полном автомате с личным оповещением на e-mail, а также ...
DVD-курс по C#, .NET

3 часть. Введение в ASP.NET. WebServices Профессиональная подготовка разработчика по языку C# на платформе .NET

asp.net webservices dvd c# gridview Гудок курс Более 65 подробных видео уроков по теоретическим основам технологии сайтостроения ASP.NET и процессу создания и использованию вебсервисов.

DVD-курс по C#, .NET

2А часть. XML/TXT в аспекте ADO.NET Профессиональная подготовка разработчика по языку C# на платформе .NET

xml txt dvd c# ADO ADO.NET Гудок курс 70 подробных видео уроков по работе с форматами xml, txt, по работе с файлами и директориями. Разработка высокоорганизованных свойств для значительного сокращения объема исходного кода и облегчения дальнейшей модификации и многое-многое другое...

DVD-курс по C#, .NET

1 часть. Windows Forms Профессиональная подготовка разработчика по языку C# на платформе .NET

Профессиональная подготовка на c# А. Гудок

185 подробнейших уроков (70 часов) лекций в формате видеоуроков по теории языка c# и платформы .NET. Практическое закрепление теоретического материала на примере создания Windows Forms - приложения видеоигры "Tanks"

DVD-курс по C#, .NET

2 часть. ADO.NET/SQL Профессиональная подготовка разработчика по языку C# на платформе .NET

Профессиональная подготовка на c# А. Гудок ADO.NET sql

165 подробных видео уроков по созданию приложений распределенных баз данных на примере разработки проектов с использований технологий ADO.NET (Connected model, Disconnected model, Typed DataSet, ...)

Бодибилдинг
Программы тренировок для занятий штангой, гантелями; описание тренажеров

Я записываю курсы!
  Курс валют

НБУ курс евро






Типы проектов ASP.NET – Web Site и WebApplication



Дорогие друзья! В этой статье я Вам расскажу о двух способах создания Web-приложений ASP.NET (а они могут создаваться либо как базовые Web-сайты без вспомогательных файлов, либо как Web-проекты) в интегрированной среде разработки (Integrated Development Environment – IDE) Visual Studio Team System 2008. Мы с Вами также рассмотрим модель кода, используемого для Web-страниц ASP.NET, и процесс компиляции, применяемый для Web-приложений ASP.NET.

В Visual Studio предлагается два способа создания Web-приложений, функционирующих на основе ASP.NET:

  • Проектная разработка (или разработка с использованием проекта). Когда создаётся Web-проект, Visual Studio генерирует файл проекта с расширением .csproj (если код пишется на языке C#), в котором фиксируются составляющие проект файлы и сохраняются некоторые отладочные параметры. При запуске Web-проекта, прежде чем запустить Web-браузер, Visual Studio сначала компилирует весь написанный разработчиком код в одну сборку;
  • Беспроектная разработка (или разработка без использования проекта). Это альтернативный подход, который подразумевает создание просто Web-сайта безо всякого файла проекта. При таком подходе Visual Studio предполагает, что каждый файл в каталоге Web-сайта (и всех его подкаталогах) является частью Web-приложения. В этом случае Visual Studio не требуется предварительно компилировать код. Вместо этого ASP.NET компилирует уже сам Web-сайт при первом запросе какой-нибудь входящей в его состав страницы. Разумеется, разработчик может применить предварительную компиляцию и устранить связанные с первым запросом непроизводительные издержки для развёртываемого Web-приложения. О том, как именно он может это сделать, мы поговорим с Вами в следующих статьях.

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

Создание беспроектного Web-сайта

Cначала необходимо открыть Microsoft Visual Studio 2008:

Start (Пуск)-> All programs (Все программы)-> Microsoft Visual Studio 2008-> Microsoft Visual Studio 2008. В результате будет открыта MS VS 2008.

После чего Вам необходимо выбрать в меню File (Файл) пункт New (Создать) Website… (Веб-узел…) – см. рис. 1.

Рис. 1. Создание нового веб-узла

Рис. 2. Диалоговое окно Новый веб-узел

В окне New Web Site (Новый веб-узел) могут быть указаны четыре следующих параметра:

  1. Версия .NET. VS 2008 поддерживает такие версии .NET: .NET 2.0, .NET 3.0, .NET 3.5. Создавать разрешается Web-приложение, функционирующее под управлением любой из этих версий .NET. Выбор нужно сделать в списке, который отображается в правом верхнем углу окна Новый веб-узел. При необходимости версию .NET можно будет изменить и уже после создания приложения, как именно – будет рассказываться позже в статье про “Многовариантность”.

  2. Шаблон. Шаблон определяет, с каких файлов должен начинаться Web-сайт. VS поддерживает два типа базовых приложений ASP.NET: приложения типа Web-сайтов и приложения типа Web-служб. Эти приложения компилируются и выполняются фактически одинаковым образом. На самом деле, вполне допускается добавлять Web-страницы в приложения типа Web-служб, а Web-службы – в приложения типа Web-сайтов. Единственным отличием являются файлы, которые VS создаёт по умолчанию: в случае приложения типа Web-сайта, это образец Web-страницы, а в случае приложения типа Web-службы – образец Web-службы. Дополнительно в VS предлагаются и более сложные шаблоны для сайтов определённых типов, а также возможность создавать свои собственные шаблоны (и возможность загружать шаблоны, созданные сторонними разработчиками).

  3. Размещение. Размещение отвечает за то, где будут храниться файлы Web-сайта. Обычно выбирается вариант File System (Файловая система), а затем указывается либо папка на локальном компьютере, либо сетевой путь. Однако Web-сайт также допускается редактировать и непосредственно через HTTP или FTP (File Transfer Protocol – протокол передачи файлов). Такой подход иногда удобен, когда требуется “вживую” выполнять редактирование Web-сайта на каком-то удалённом Web-сервере. С другой стороны он влечёт за собой дополнительные накладные расходы. Конечно, редактировать напрямую сам производственный сервер не следует никогда, поскольку такие изменения являются автоматическими и необратимыми. Вместо этого лучше ограничивать свои изменения только тестовыми серверами.

  4. Язык. Этот параметр позволяет указывать язык программирования .NET, который будет использоваться для написания кода Web-сайта. Выбираемый язык становится просто языком по умолчанию для проекта. Это означает, что разработчик может явно добавлять Web-страницы, написанные на Visual Basic, к Web-сайту на C# и наоборот (что было невозможно в предыдущих версиях VS).

Чтобы не вводить путь размещения файлов вручную, можно щёлкнуть на кнопке Browse (Обзор), что приведёт к открытию диалогового окна Choose Location (Выбор папки). Вдоль левой стороны этого окна будут отображаться четыре кнопки, позволяющие выбирать различные варианты размещения файлов:

  • File System (Файловая система). Это самый простой вариант, поскольку он подразумевает просто просмотр дерева дисков и каталогов или общих ресурсов, отображаемых другими компьютерами в сети, и выбор подходящего каталога. При желании создать новый каталог нужно всего лишь щёлкнуть на пиктограмме Create New Folder (Создать новую папку), которая отображается в правом верхнем углу дерева каталогов. (Заставить Visual Studio создать новый каталог ещё также можно и путём добавления имени нового каталога в конце пути.)
  • Local IIS (Локальный веб-сервер IIS). Этот вариант позволяет просматривать виртуальные каталоги, которые делает доступными предоставляющее Web-хостинг программное обеспечение IIS, при условии, конечно, что таковое установлено на данном компьютере. Более подробно о виртуальных каталогах и способах их создания с помощью IIS Manager (Диспетчер IIS) будет рассказываться в отдельной статье. Наиболее впечатляет то, что виртуальные каталоги также можно создавать, не покидая Visual Studio. Все, что для этого требуется, это просто выбрать узел Default Web Site (Web-сайт по умолчанию) и затем щёлкнуть на пиктограмме Create New Web Application (Создать новое Web-приложение) в правом верхнем углу дерева виртуальных каталогов.
  • FTP Site (FTP-узел). Этот вариант является не таким удобным, как поиск нужного каталога, поскольку предполагает ввод всей информации, которая необходима для установки соединения, а именно: имени FTP-сайта, номера порта, названия каталога, имени пользователя и пароля.
  • Remote Web Site (Удалённый веб-узел). Этот вариант позволяет получать доступ к определённому Web-сайту с определённым URL-адресом по протоколу HTTP. Чтобы он работал, на Web-сервере, к которому требуется получить доступ, должен быть установлен компонент FrontPage Extensions. Вдобавок, при подключении потребуется ввести имя пользователя и пароль.

На рис. 3 показаны все перечисленные варианты размещений.







Рис. 3. Выбор размещения Web-сайта

После того, как вы сделаете свой выбор и щёлкните на кнопке Open (Открыть), Visual Studio вернёт Вас в диалоговое окно New Web Site. Щёлкните на кнопке OK, и Visual Studio создаст новое Web-приложение. Изначально новый Web-сайт будет состоять из трёх файлов (рис. 4): файла главной Web-страницы (Default.aspx), файла её исходного кода (Default.aspx.cs) и конфигурационного файла web.config.

Рис. 4. Обозреватель решений

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

Беспроектная разработка продолжает пользоваться популярностью по перечисленным ниже причинам:

  • Она упрощает сам процесс разработки. Требуется просто скопировать все файлы из каталога Web-сайта на Web-сервер: нет никаких ни проектных, ни отладочных файлов, которых следовало бы избегать.
  • Она упрощает управление файлами. При желании удалить страницу, можно просто удалить ассоциируемые с нею файлы с помощью любой предпочитаемой программы для управления файлами. При желании добавить новую страницу или перенести какую-нибудь страницу из одного Web-сайта в другой, необходимо опять-таки лишь скопировать ассоциируемые с нею файлы: ни иметь дело с Visual Studio, ни редактировать файл проекта не требуется. Из-за отсутствия файла проекта, о котором нужно было бы заботиться, в Web-страницы даже авторские коррективы можно вносить другими средствами.
  • Она упрощает совместную командную работу. Разные люди могут по отдельности работать над разными Web-страницами, и блокировать никакие проектные файлы при этом не требуется.
  • Она упрощает отладку. В случае, когда создаётся Web-проект, при изменении даже одной единственной страницы заново необходимо компилировать всё приложение. В случае беспроектной разработки каждая страница компилируется отдельно, причём только тогда, когда запрашивается впервые.
  • Позволяет смешивать языки Поскольку каждая Web-страница компилируется отдельно, разработчик волен писать код для своих страниц на разных языках. В случае проектной разработки, ему для этого придётся создавать либо отельные Web-проекты (что усложнит управление), либо отдельные проекты библиотеки классов.

Разработка, основанная на проектах

При создании Web-проекта Visual Studio генерирует ряд дополнительных файлов, включая пользовательские файлы проекта с расширением .csproj, а также файл решения с расширением .sln. При компоновке приложения Visual Studio генерирует временные файлы, которые размещает в подкаталоге obj, и один или более .pdb-файлов с отладочными символами, которые размещает в подкаталоге bin. Ни один из этих файлов не должен развёртываться на Web-сервере, когда Web-приложение будет готово. Более того, также не должны развёртываться и файлы исходного кода на C# (файлы с расширением .cs), поскольку Visual Studio предварительно компилирует их в DLL-сборку.

К числу наиболее важных преимуществ Web-проектов относятся перечисленные ниже:

  • Система проектной разработки является более чёткой, чем система беспроектной разработки. Всё дело в том, что в файле проекта явно перечисляются все файлы, которые должны входить в этот проект. Это позволяет перехватывать вероятные ошибки (вроде недостающих файлов) и даже анализировать возможные варианты атак (вроде добавления злонамеренным пользователем нежелательных файлов).
  • Web-проекты предусматривают больше возможностей для управления файлами. Одним из примеров может служить случай, когда создаётся несколько проектов, и все они размещаются в подкаталогах внутри одного и тоже же виртуального каталога. В таком сценарии получается, что файлы хранятся отдельно для целей разработки, но при этом по сути всё равно являются частью одного и того же приложения для развёртывания. В случае беспроектной разработки возможности размещать файлы отдельно в таких подкаталогах не существует.
  • Web-проекты предусматривают возможность настройки процесса развёртывания. Файлы проектов Visual Studio работают с утилитой MSBuild, которая позволяет настраивать и автоматизировать процесс компиляции проекта, а также управлять генерируемой для Web-приложения сборкой, присваивая ей подходящее имя, добавляя в неё подпись и т.д.
  • Web-проекты работают лучше в некоторых сценариях миграции. По этой причине ASP.NET автоматически преобразовывает Web-проекты Visual Studio .NET 2003 в Web-проекты Visual Studio 2008. Это преобразование требует внесения в страницы меньшего количества изменений.

Доступные функциональные возможности ASP.NET как при беспроектной, так и при основанной на проектах разработке выглядят одинаково. Более того, показатели производительности и в том, и в другом случае тоже ничем не отличаются. Так какой же тогда вариант лучше выбирать при создании нового Web-сайта ASP.NET? У каждого подхода имеются свои сторонники. Официально Microsoft рекомендует пользоваться более простой моделью Web-сайта во всех случаях, кроме тех, когда существует серьёзная причина использовать всё-таки именно Web-проект.

Создание Web-проекта

Cначала необходимо открыть Microsoft Visual Studio 2008: Start (Пуск)->All programs (Все программы)-> Microsoft Visual Studio 2008->Microsoft Visual Studio 2008. В результате будет открыта MS VS 2008.

После чего Вам необходимо выбрать в меню File (Файл) пункт New (Создать)-> Project… (Проект…) – см. рис. 5.

После этого Visual Studio отобразит диалоговое окно New Project (Создать проект). В нём необходимо развернуть в дереве Project Types (Типы проектов) узел Visual C#->Web и выбрать элемент ASP.NET Web Application (Веб-приложение ASP.NET) как показано на рис. 6.

Рис. 5. Создание нового веб-проекта

 

Рис. 6. Диалоговое окно Создать проект

Далее нужно указать место размещения, либо в виде пути к файлу, либо в виде URL-адреса, указывающего на локальный или удалённый Web-сервер IIS, а также имя проекта, которое затем будет использовано для создания в выбранном месте размещения соответствующего подкаталога (или виртуального каталога, если применяется URL-адрес). Как и при создании беспроектного Web-сайта, с помощью списка, отображаемого в правом верхнем углу окна, можно изменить целевую версию .NET Framework.

Хотя Web-проекты и беспроектные Web-сайты дают одинаковый конечный результат после развёртывания и компиляции на Web-сервере, в способе, которым они структурируются во время проектирования, существуют некоторые отличия. Ниже перечислены эти отличия:

  • Компиляция. Как уже объяснялось ранее, при запуске Web-проекты компилируются Visual Studio (а не ASP.NET). Классы Web-страниц объединяются в одну сборку, которая получает то же имя, что и у Web-проекта (например, WebApplication) и затем размещается в папке bin.
  • Отделённый код. Web-страницы в Web-проекте всегда используют модель отделенного кода. Однако они включают один дополнительный файл с расширением .aspx.desginer.cs, в котором содержатся объявления для всех имеющихся на них элементов управления. Это означает, что если вы создадите страницу с именем Default.aspx, вы получите файл Default.aspx.cs с классом отделённого кода и файл Default.aspx.designer.cs с объявлениями элементов управления (рис. 7). Во время компиляции эти два файла будут объединены. В беспроектном Web-сайте вы никогда не увидите файла с объявлениями элементов управления, поскольку эта часть кода генерируется во время компиляции системой ASP.NET.

    Рис. 7. Файл .aspx.designer.cs с объявлениями элементов управления

  • Директива Page. В Web-страницах Web-проекта директива Page выглядит немного по-другому. В ней для указания на файл с исходным кодом вместо атрибута CodeFile применяется атрибут CodeBehind. Это отличие тоже связано с тем, что компиляцию осуществляет Visual Studio, а не ASP.NET. ASP.NET проверяет атрибут CodeFile, а Visual Studio — атрибут CodeBehind.
  • Ссылки на сборки. В беспроектном Web-сайте все ссылки на сборки фиксируются в файле web.config, так что ASP.NET может использовать их при разрешении ссылок во время компиляции. Но в Web-проекте ссылки на сборки сохраняются в файле проекта, к которому Visual Studio обращается при компиляции кода. Исключением являются только ссылки на сборку System.Core.dll и сборку System.Web.Extensions.dll, в которых содержатся все специфические функции .NET 3.5. Эти ссылки определяются в файле web.config, поскольку включают классы, необходимые для указания новых конфигурационных параметров.

Дорогие друзья! Урок затянулся, но я надеюсь, Вам было интересно. Если что пишите на rubanov.av@mail.ru. В следующих уроках я более подробно расскажу о структуре этих двух типов проектов, о страницах и элементах управления (контролах).



Больше информации читайте по теме:



Оценить статью:

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

Частичное, или полное копирование материала данной статьи возможно лишь при размещении ссылки на данную страницу.


            
        




Имя:  


Текст комментариев (не больше 600 знаков):  
введите не более 600 знаков



Введите символы с картинки:
Капча имеет "срок годности". Поэтому, если необходимо обновите страницу.



Черный список покупателей
c# курс Гудок   курс по ASP.NET Гудок   курс по ADO.NET Гудок   курс по XML txt Гудок   курс по рефлексии и многопоточности Гудок