Развертывание веб-приложения ASP.NET с помощью SQL Server Compact с помощью Visual Studio: введение — 1 из 12

Том Дайкстра (Tom Dykstra)

Скачать начальный проект

В этой серии руководств показано, как развернуть (опубликовать) проект веб-приложения ASP.NET, включающий базу данных SQL Server Compact, с помощью версии-кандидата Visual Studio 2012 или Visual Studio Express 2012 RC for Web. Вы также можете использовать Visual Studio 2010 при установке обновления веб-публикации.

Руководство по функциям развертывания, появившиеся после выпуска версии-кандидата Visual Studio 2012, развертывание SQL Server выпусков, отличных от SQL Server Compact, а также развертывание в Служба приложений Azure веб-приложения, см. в статье ASP.NET веб-развертывание с помощью Visual Studio.

В этих руководствах описывается развертывание сначала в СЛУЖБАх IIS на локальном компьютере разработки для тестирования, а затем в стороннем поставщике услуг размещения. Развертываемое приложение использует базу данных приложения и базу данных членства ASP.NET. Вы начинаете использовать SQL Server Compact и развертывание в SQL Server Compact, а в последующих руководствах показано, как развернуть изменения базы данных и как выполнить миграцию на SQL Server.

В руководствах предполагается, что вы знаете, как работать с ASP.NET в Visual Studio. В противном случае лучше всего начать с базового руководства по ASP.NET Web Forms или простого руководства по ASP.NET MVC.

Если у вас есть вопросы, не связанные непосредственно с руководством, вы можете опубликовать их на форуме по развертыванию ASP.NET.

Общие сведения

В этих руководствах описывается развертывание сначала в СЛУЖБАх IIS на локальном компьютере разработки для тестирования, а затем в стороннем поставщике услуг размещения. Развертываемое приложение использует базу данных приложения и базу данных членства ASP.NET. Вы начинаете использовать SQL Server Compact и развертывание в SQL Server Compact, а в последующих руководствах показано, как развернуть изменения базы данных и как выполнить миграцию на SQL Server.

Количество учебников —11 на всех плюс страница устранения неполадок — может показаться сложной процедурой развертывания. На самом деле основные процедуры развертывания сайта составляют относительно небольшую часть учебного набора. Однако в реальных ситуациях часто требуются сведения о некоторых небольших, но важных дополнительных аспектах развертывания, например о настройке разрешений папки на целевом сервере. Мы включили многие из этих дополнительных методов в учебники, надеясь, что в них не будут отображаться сведения, которые могут помешать успешному развертыванию реального приложения.

Учебники предназначены для последовательного выполнения, и каждая часть создается на основе предыдущей части. Однако вы можете пропустить части, которые не относятся к вашей ситуации. (Пропуск частей может потребовать настройки процедур в последующих руководствах.)

Целевая аудитория

Эти руководства предназначены для ASP.NET разработчиков, работающих в небольших организациях или других средах, где:

  • Процесс непрерывной интеграции (автоматизированные сборки и развертывание) не используется.
  • Рабочая среда является сторонним поставщиком услуг размещения.
  • Один человек обычно занимает несколько ролей (один и тот же человек разрабатывает, тестирует и развертывает).

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

Организации любого размера также могут развертывать веб-приложения в Azure, и большинство процедур, описанных в этих руководствах, применимы также к веб-приложения служб приложение Azure. Общие сведения об Azure см. в разделе https://azure.microsoft.com.

Поставщик услуг размещения, показанный в руководствах

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

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

Развертывание проектов веб-сайта

Университет Contoso — это проект веб-приложения Visual Studio. Большинство методов и средств развертывания, показанных в этом руководстве, не применяются к проектам веб-сайтов. Сведения о развертывании проектов веб-сайтов см. в разделе ASP.NET Схема содержимого развертывания.

Развертывание ASP.NET проектов MVC

В этом руководстве вы развернете проект ASP.NET Web Forms, но все, что вы узнаете, как это сделать, применимо и к ASP.NET MVC. Проект Visual Studio MVC — это еще одна форма проекта веб-приложения. Единственное отличие заключается в том, что при развертывании в поставщике услуг размещения, который не поддерживает ASP.NET MVC или целевой версии, необходимо убедиться, что в проекте установлен соответствующий пакет NuGet (MVC 3 или MVC 4).

Язык программирования

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

Устранение неполадок в рамках этого руководства

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

Добро пожаловать в комментарии

Комментарии к учебникам приветствуются, и при обновлении учебника будут предприняты все усилия, чтобы учесть исправления или предложения по улучшениям, которые предоставляются в комментариях к учебнику.

Предварительные требования

Перед началом работы убедитесь, что на компьютере установлена Windows 7 или более поздняя версия и один из следующих продуктов:

Если у вас visual Studio 2010 с пакетом обновления 1 (SP1) или Visual Web Developer Express 2010 с пакетом обновления 1 (SP1), установите также следующие продукты:

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

Скачивание примера приложения

Приложение, которое вы будете развертывать, называется Contoso University и уже создано для вас. Это упрощенная версия университетского веб-сайта, основанная на приложении Университета Contoso, описанном в руководствах по Entity Framework на сайте ASP.NET.

После установки необходимых компонентов скачайте веб-приложение Университета Contoso. Файл .zip содержит несколько версий проекта и PDF-файл, содержащий все 12 учебников. Чтобы выполнить действия, описанные в этом руководстве, начните с ContosoUniversity-Begin. Чтобы увидеть, как выглядит проект в конце учебников, откройте ContosoUniversity-End. Чтобы узнать, как выглядит проект перед переходом на полный SQL Server в руководстве 10, откройте ContosoUniversity-AfterTutorial09.

Чтобы подготовиться к работе с этим руководством, сохраните ContosoUniversity-Begin в папке, используемой для работы с проектами Visual Studio. По умолчанию это следующая папка:

C:\Users\<username>\Documents\Visual Studio 2012\Projects

(На снимках экрана в этом руководстве папка проекта находится в корневом каталоге Cна диске : .)

Запустите Visual Studio, откройте проект и нажмите клавиши CTRL+F5, чтобы запустить его.

Home_page

Страницы веб-сайта доступны в строке меню и позволяют выполнять следующие функции:

  • Отображение статистики учащихся (страница "О программе").
  • Отображение, изменение, удаление и добавление учащихся.
  • Отображение и изменение курсов.
  • Отображение и изменение преподавателей.
  • Отображение и изменение отделов.

Ниже приведены снимки экрана с несколькими репрезентативными страницами.

Students_Page

Add_Students_Page

Просмотр функций приложений, влияющих на развертывание

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

  • Университет Contoso использует базу данных SQL Server Compact для хранения данных приложения, таких как имена учащихся и преподавателей. База данных содержит сочетание тестовых данных и рабочих данных, и при развертывании в рабочей среде необходимо исключить тестовые данные. Далее в этой серии руководств вы перейдете с SQL Server Compact на SQL Server.
  • Приложение использует систему членства ASP.NET, которая хранит сведения об учетной записи пользователя в базе данных SQL Server Compact. Приложение определяет пользователя с правами администратора, который имеет доступ к некоторым ограниченным сведениям. Необходимо развернуть базу данных членства без тестовых учетных записей, но с одной учетной записью администратора.
  • Так как база данных приложения и база данных членства используют SQL Server Compact в качестве ядра СУБД, необходимо развернуть ядро СУБД у поставщика размещения, а также сами базы данных.
  • Приложение использует ASP.NET универсальных поставщиков членства, чтобы система членства хранила свои данные в базе данных SQL Server Compact. Сборка, содержащая универсальные поставщики членства, должна быть развернута вместе с приложением.
  • Приложение использует Entity Framework 5.0 для доступа к данным в базе данных приложения. Сборка, содержащая Entity Framework 5.0, должна быть развернута вместе с приложением.
  • Приложение использует стороннюю служебную программу ведения журнала ошибок и создания отчетов. Эта служебная программа предоставляется в сборке, которая должна быть развернута вместе с приложением.
  • Служебная программа ведения журнала ошибок записывает сведения об ошибках в XML-файлах в папку файлов. Необходимо убедиться, что учетная запись, в которой ASP.NET выполняется на развернутом сайте, имеет разрешение на запись в эту папку, и необходимо исключить эту папку из развертывания. (В противном случае данные журнала ошибок из тестовой среды могут быть развернуты в рабочей среде и (или) файлы журнала ошибок в рабочей среде могут быть удалены.)
  • Приложение включает некоторые параметры, которые необходимо изменить в развернутом Web.config файле в зависимости от целевой среды (тестовой или рабочей), а также другие параметры, которые необходимо изменить в зависимости от конфигурации сборки (отладка или выпуск).
  • Решение Visual Studio включает проект библиотеки классов. Должна быть развернута только сборка, созданная этим проектом, а не сам проект.

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