Пошаговое руководство. Развертывание проекта веб-приложения с помощью пакета веб-развертывания (часть 1 из 4)

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

В данной серии пошаговых руководств рассматриваются следующие задачи:

  • создание пакета для конфигурации построения "Debug";

  • создание пакета для конфигурации построения "Release";

  • преобразование параметров файла web.config для целевой среды;

  • включение пользовательских скриптов SQL во время развертывания;

  • повторное развертывание уже развернутой базы данных;

  • исключение из развертывания уже развернутой базы данных;

  • развертывание нескольких баз данных разработки в одну целевую базу данных;

  • развертывание базы данных членства ASP.NET как со сведениями об учетных записях, созданных на локальном компьютере, так и без этих сведений;

  • применение пользовательских параметров развертывания для значений конфигурации, которые нужно изменять после установки пакета;

  • установка пакета на локальный компьютер с помощью диспетчера служб IIS;

  • установка пакета на удаленный компьютер с помощью файла deploy.cmd.

В данном пошаговом руководстве рассмотрены следующие задачи:

  • создание пакета для конфигурации построения "Debug";

  • преобразование параметров файла web.config для целевой среды;

  • развертывание нескольких баз данных разработки в одну целевую базу данных;

  • включение пользовательских скриптов SQL во время развертывания;

  • развертывание базы данных членства ASP.NET по умолчанию с использованием сведений об учетных записях, созданных на локальном компьютере;

  • установка пакета на локальный компьютер с помощью диспетчера служб IIS.

Обязательные компоненты

Для выполнения данной серии пошаговых руководств потребуется следующее.

  • Visual Studio или Visual Web Developer Express.

    Примечание

    Если используется Visual Studio, в пошаговом руководстве предполагается, что при первом запуске Visual Studio была выбрана коллекция параметров Веб-разработка.Дополнительные сведения см. в разделе Практическое руководство. Выбор параметров среды веб-разработки.

  • SQL Server Express 2008 или более поздняя версия. (По умолчанию это приложение устанавливается вместе с Visual Studio.)

  • Версия базы данных AdventureWorksLT в виде MDF-файла. Этот файл можно загрузить в виде файла SQL2008.AdventureWorksLT2008_Only_Database.zip со страницы Microsoft SQL Server: Database Product Samples на веб-сайте CodePlex.

  • Службы IIS 7, работающие на локальном компьютере.

  • Платформа ASP.NET 4, зарегистрированная в службах IIS 7 на локальном компьютере, и пул приложений ASP.NET 4, назначенный веб-сайту по умолчанию. Дополнительные сведения см. в разделе Программа регистрации IIS для ASP.NET (Aspnet_regiis.exe).

  • Права администратора на локальном компьютере.

Кроме того, для завершения установки пакета развертывания для четвертого пошагового руководства необходимо следующее:

  • Второй компьютер, на который можно выполнить развертывание. На втором компьютере также должны работать службы IIS 7, в службах IIS 7 должна быть зарегистрирована платформа ASP.NET 4 и пул приложений ASP.NET 4 должен быть назначен веб-сайту по умолчанию. Если вы выполняете настройку этого компьютера, вам необходимы на нем права администратора. Если этот компьютер настраивает кто-то другой, вам могут понадобиться права администратора на этом компьютере, в зависимости от используемого метода развертывания. Дополнительные сведения см. в разделе Пошаговое руководство. Развертывание проекта веб-приложения с помощью пакета веб-развертывания (часть 4 из 4), который и является тем пошаговым руководством, для которого требуется второй компьютер.

Создание веб-проекта для развертывания

В следующей процедуре создается проект веб-приложения для развертывания с помощью шаблона проекта Веб-приложение ASP.NET Visual Studio. Будет создана база данных членства ASP.NET по умолчанию, добавлена база данных AdventureWorksLT, а также добавлены элементы управления для отображения данных из базы данных AdventureWorksLT.

Создание веб-проекта для развертывания

  1. В меню Файл Visual Studio выберите пункт Создать проект.

    Примечание

    Убедитесь, что выбран пункт Создать проект, а не Новый веб-узел.Пакеты развертывания работают только для проектов веб-приложений.

    Откроется диалоговое окно Создать проект.

  2. В окне Установленные шаблоны разверните узел Visual Basic или C# и выберите Интернет.

  3. Выберите шаблон Веб-приложение ASP.NET.

    Диалоговое окно Новый проект аналогично окну, показанному на следующем рисунке:

    Диалоговое окно "Новый проект" со значениями по умолчанию

  4. В поле Имя введите AdventureWorks.

  5. Нажмите кнопку ОК.

    Visual Studio создает веб-приложение. Для базы данных этого приложения создается папка App_Data, но базы данных в ней еще нет.

  6. В обозревателе решений разверните папку "Учетная запись", щелкните правой кнопкой мыши файл Register.aspx и выберите команду Показать в браузере.

    Откроется страница Создать новую учетную запись, как показано на следующем рисунке:

    Создание страницы новой учетной записи

  7. Введите "новый_пользователь" в поле Имя пользователя, введите "новый_пользователь" в поле Пароль, введите адрес электронной почты, затем нажмите кнопку Создать пользователя.

    В папке App_Data создается файл ASPNETDB.MDF базы данных SQL Server, и в нее заносятся введенные вами значения. Чтобы MDF-файл отображался в обозревателе решений, нажмите кнопку Показать все файлы на панели инструментов Обозревателя решений.

  8. Извлеките содержимое файла SQL2008.AdventureWorksLT2008_Only_Database.zip в папку App_Data вашего проекта. Сведения об этом примере базы данных см. в подразделе Обязательные компоненты ранее в этом разделе.

  9. Откройте файл Web.config.

  10. В элементе connectionStrings добавьте строку подключения для базы данных AdventureWorksLT, как показано в следующем примере:

    <connectionStrings>
      <add name="ApplicationServices"
          connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true"
          providerName="System.Data.SqlClient" />
      <add name="AWLTConnectionString" 
          connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\AdventureWorksLT2008_Data.mdf;User Instance=true"
          providerName="System.Data.SqlClient" />
    </connectionStrings>
    
  11. Сохраните изменения и закройте файл Web.config.

  12. Откройте файл Default.aspx.

    Файл отображается в представлении Исходный код.

  13. Удалите элементы h2 и p, затем добавьте вместо них следующую разметку:

    <h2>
      Welcome to AdventureWorks!
    </h2>
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:AWLTConnectionString %>" 
        SelectCommand="SELECT SalesLT.Product.* FROM SalesLT.Product">
    </asp:SqlDataSource>
    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
        DataKeyNames="ProductID" DataSourceID="SqlDataSource1">
        <Columns>
            <asp:BoundField DataField="Name" HeaderText="Name" 
                SortExpression="Name" />
            <asp:BoundField DataField="Color" HeaderText="Color" 
                SortExpression="Color" />
            <asp:BoundField DataField="ListPrice" HeaderText="ListPrice" 
                SortExpression="ListPrice" />
            <asp:BoundField DataField="Size" HeaderText="Size" 
                SortExpression="Size" />
            <asp:BoundField DataField="Weight" HeaderText="Weight" 
                SortExpression="Weight" />
        </Columns>
    </asp:GridView>
    

    Эта разметка изменяет название приложения на Adventure Works и добавляет элемент управления GridView, который отображает данные из одной из таблиц базы данных AdventureWorksLT. Этот элемент управления позволит убедиться, что данные AdventureWorks LT успешно развернуты.

  14. Сохраните и закройте файл Default.aspx.

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

    1. Откройте файл Site.master.

    2. Удалите текст "My ASP.NET Application" и замените его текстом "Adventure Works".

    3. Сохраните и закройте файл.

  16. Проверьте сайт, выполнив следующие действия.

    1. Нажмите комбинацию клавиш CTRL-F5 для тестирования приложения.

      В браузере отображается страница Default.aspx. На странице отображается список продуктов компании Adventure Works, как показано на следующей иллюстрации:

      Страница по умолчанию веб-приложения Adventure Works

    2. Щелкните гиперссылку Войти.

      Откроется страница Вход.

    3. Введите "новый_пользователь" в поля Имя пользователя и Пароль, затем щелкните Вход.

      Открывается страница Default.aspx, и в правом верхнем углу отображается текст Добро пожаловать, новый_пользователь!, как показано на следующей иллюстрации:

      Страница Adventure Works по умолчанию после входа

    4. Закройте браузер.

Создание целевой базы данных

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

В следующей процедуре создается пустая целевая база данных, в которую будет выполняться развертывание.

Создание целевой базы данных

  1. Щелкните правой кнопкой мыши Подключения данных в Обозревателе серверов и выберите команду Создать новую базу данных SQL Server.

    Откроется диалоговое окно Создание новой базы данных SQL Server.

  2. В поле Имя сервера введите localhost\SQLExpress.

  3. В поле Имя новой базы данных введите AdventureWorksTest.

    После ввода имени базы данных диалоговое окно Создание новой базы данных SQL Server выглядит приблизительно так, как показано на следующей иллюстрации:

    Диалоговое окно "Создать базу данных"

  4. Нажмите кнопку ОК.

    Создается новая база данных, которая отображается в папке Подключения данных окна Обозреватель серверов, как показано на следующей иллюстрации:

    Обозреватель сервера с новой базой данных

Создание скрипта предоставления доступа для целевой базы данных

Когда веб-приложение развертывается в службах IIS, ему назначается пул приложений ASP.NET 4 по умолчанию, и доступ к этой базе данных будет производиться с использованием учетных данных пула приложений. Поэтому необходимо также создать скрипт, предоставляющий разрешения чтения этим учетным данным.

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

Создание скрипта, предоставляющего разрешение чтения пулу приложений

  1. Откройте текстовый редактор, такой как "Блокнот".

  2. Создайте новый текстовый файл и вставьте в него следующие инструкции Transact-SQL:

    CREATE LOGIN [IIS APPPOOL\ASP.NET v4.0] 
      FROM WINDOWS WITH DEFAULT_DATABASE=[master], 
      DEFAULT_LANGUAGE=[us_english]
    GO
    CREATE USER [AdventureWorksUser] 
      FOR LOGIN [IIS APPPOOL\ASP.NET v4.0]
    GO
    EXEC sp_addrolemember 'db_datareader', 'AdventureWorksUser'
    GO
    

    Примечание

    Этот скрипт предназначен для работы с параметрами безопасности по умолчанию в Windows 7 и Windows Server 2008 R2.Если вы используете более раннюю версию Windows или у вашего компьютера особые параметры безопасности, этот скрипт может не сделать базу данных доступной для учетных данных, используемых веб-сайтом, когда он работает в IIS.Дополнительные сведения о безопасности SQL Server см. на странице Электронная документация по SQL Server.

  3. Назовите файл AdventureWorksGrant.sql и сохраните его в папке на вашем компьютере, например в папке C:\Temp.

    Скрипт можно сохранить в любую папку. Запомните его расположение, потому что скрипт понадобится позже в этом пошаговом руководстве.

Настройка активной конфигурации построения

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

Задание активной конфигурации построения

  1. В меню Построение выберите Диспетчер конфигураций.

    Откроется диалоговое окно Диспетчер конфигураций.

  2. Убедитесь, что в списке Активная конфигурация решения выбран вариант Debug.

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

  3. Закройте Диспетчер конфигураций.

Указание параметров пакета развертывания

В следующей процедуре указывается, какие файлы и параметры IIS следует развернуть и как следует создавать пакет.

Указание параметров для пакета развертывания

  1. В обозревателе решений щелкните правой кнопкой мыши проект и выберите пункт Свойства.

    Откроется страница Свойства.

  2. Перейдите на вкладку Упаковка и публикация веб-проекта.

    Вкладка Пакет/Публикация веб-сайта отображается так, как показано на следующем рисунке.

    Вкладка "Упаковка и публикация веб-проекта"

    Убедитесь, что в списке Конфигурация выбран вариант Активная (Debug). По умолчанию выбрана активная конфигурация построения. В предыдущей процедуре в качестве активной конфигурации построения был задан вариант Debug.

  3. Убедитесь, что в списке Элементы для развертывания (применяется для всех способов развертывания) выбран вариант Только необходимые для запуска приложения файлы.

  4. Убедитесь, что флажок Исключить автоматически созданные символы отладки не установлен.

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

    Примечание

    Возможность запуска развернутого веб-сайта в режиме отладки зависит от этого параметра и параметра файла Web.config.Она не зависит от имени конфигурации построения.

  5. Установите флажок Исключить файлы из папки App_Data.

    В проекте используются MDF-файлы SQL Server Express из папки App_Data, но развертывание будет производиться в пустую целевую базу данных с помощью скриптов. Поэтому MDF-файлы развертываться не будут.

  6. Убедитесь, что установлен флажок Включить все базы данных, настроенные на вкладке "Упаковка и публикация SQL-проекта". (Вкладка Упаковка и публикация SQL-проекта будет настроена в следующей процедуре.)

  7. Убедитесь, что установлен флажок Создать веб-пакет как ZIP-файл.

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

  8. Убедитесь, что поле Расположение для создания пакета содержит следующее значение (то есть значение по умолчанию, если указано имя проекта AdventureWorks):

    obj\Debug\Package\AdventureWorks.zip

  9. В поле Имя веб-сайта или приложения IIS для использования на конечном сервере: введите веб-сайт по умолчанию/AdventureWorks.

  10. Сохраните изменения, сделанные на вкладке Упаковка и публикация веб-проекта.

Задание параметров развертывания базы данных

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

Задание скриптов SQL Server, выполняющихся при развертывании

  1. Перейдите на вкладку Упаковка и публикация SQL-проекта.

    Вкладка Пакет/Публикация SQL отображается так, как показано на следующем рисунке.

    Вкладка "Упаковка и публикация SQL-проекта"

  2. Щелкните Импортировать из Web.config.

    Visual Studio считывает файл Web.config приложения, чтобы определить строки подключения. Для каждой строки подключения в файле Web.config среда Visual Studio создает строку в таблице Записи базы данных. По умолчанию имя в таблице Записи базы данных состоит из имени строки подключения с добавленным суффиксом -Deployment.

    В случае этого пошагового руководства создаются две строки. Одна с именем ApplicationServices-Deployment, вторая с именем AWLTConnectionString-Deployment, как показано на следующей иллюстрации:

    Сетка баз данных на вкладке "Упаковка и публикация SQL-проекта"

  3. Убедитесь, что в таблице Записи базы данных выбрана строка ApplicationServices-Deployment.

    Поля под таблицей Записи базы данных относятся к строке, выбранной в таблице Записи базы данных. Если никакая строка не выбрана, поля под таблицей отключены.

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

    1. В окне Обозреватель серверов разверните папку "Подключения данных" и выберите базу данных AdventureWorksTest.

    2. В окне Свойства выберите значение свойства Строка подключения и скопируйте его. Примерный вид окна Свойства показан на следующей иллюстрации:

      Окно свойств, отображающее строку подключения

    3. Вставьте строку подключения в поле Строка подключения для конечной базы данных.

  5. Убедитесь, что установлен флажок Извлечь данные и (или) схему из существующей базы данных.

    При нажатии кнопки Импортировать из Web.config этот параметр выбирается автоматически. Поле Строка подключения для исходной базы данных также автоматически заполняется с использованием строки подключения из файла Web.config.

  6. Выберите в списке Параметры создания скриптов базы данных пункт Схема и данные.

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

  7. В таблице Записи базы данных выберите строку AWLTConnectionString-Deployment.

    Значения по умолчанию отображаются в полях, расположенных под таблицей.

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

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

  9. Убедитесь, что установлен флажок Извлечь данные и (или) схему из существующей базы данных.

  10. Выберите в списке Параметры создания скриптов базы данных пункт Схема и данные.

  11. Нажмите кнопку Добавить скрипт.

  12. В диалоговом окне Выбор файла перейдите к файлу C:\Temp\AdventureWorksGrant.sql и нажмите кнопку Открыть. (Если ранее в этом пошаговом руководстве вы сохранили скрипт в другой папке, используйте ее имя.)

    Файл AdventureWorksGrant.sql добавляется в таблицу Скрипты базы данных, как показано на следующей иллюстрации:

    Сетка скриптов базы данных на вкладке "Упаковка и публикация SQL-проекта"

  13. Сохраните изменения, сделанные на вкладке Упаковка и публикация SQL-проекта.

Указание режима транзакций для пользовательского скрипта

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

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

Задание выполнения пользовательского скрипта в транзакции

  1. Откройте файл AdventureWorks.csproj или AdventureWorks.vbproj в текстовом редакторе, например Блокноте.

    Чтобы перейти в каталог проекта, щелкните проект правой кнопкой мыши в обозревателе решений и выберите команду Открыть папку в проводнике Windows.

  2. Найдите элемент PropertyGroup, относящийся к конфигурации построения "Debug".

    Открывающий тег элемента похож на следующий пример.

    <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">

  3. В элементе PropertyGroup найдите элемент PublishDatabaseSettings.

  4. В элементе PublishDatabaseSettings найдите элемент ObjectGroup с именем AWLTConnectionString-Deployment.

    Второй элемент Object в этом элементе ObjectGroup предназначен для скрипта AdventureWorksGrant.sql.

  5. В элементе Object, предназначенном для скрипта AdventureWorksGrant.sql, измените значение атрибута Transacted элемента Source на True.

    Элемент ObjectGroup с именем AWLTConnectionString-Deployment будет выглядеть подобно следующему примеру.

    <ObjectGroup Name="AWLTConnectionString-Deployment" Order="2">
      <Destination Path="..." />
      <Object Type="dbFullSql" Enabled="True">
        <PreSource Path="..." ScriptSchema="True" ScriptData="True"
          CopyAllFullTextCatalogs="False" ScriptDropsFirst="True" />
        <Source Path="..." Transacted="True" />
      </Object>
      <Object Type="dbFullSql" Enabled="False">
        <Source Path="...\AdventureWorksGrant.sql" Transacted="True" />
      </Object>
    </ObjectGroup>
    
  6. Сохраните изменения и закройте файл проекта.

  7. При поступлении запроса Visual Studio на перезагрузку проекта нажмите кнопку Перезагрузить.

Изменение строки подключения в развернутом файле Web.config

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

Изменение строки подключения в развернутом файле Web.config

  1. В обозревателе решений разверните файл Web.config.

  2. Если файл с именем Web.Debug.config отсутствует, щелкните правой кнопкой мыши файл Web.config, а затем выберите Добавить преобразования конфигурации.

  3. Откройте файл Web.Debug.config.

  4. Удалите блок комментариев, содержащий элемент connectionStrings, и замените его приведенной ниже разметкой. Замените текст [строка подключения] значением, введенным в поле Строка подключения для конечной базы данных.

    <connectionStrings>
      <add name="ApplicationServices"
           connectionString="[connection string]"
           providerName="System.Data.SqlClient" 
           xdt:Transform="SetAttributes" xdt:Locator="Match(name)" />
      <add name="AWLTConnectionString"
           connectionString="[connection string]"
           providerName="System.Data.SqlClient" 
           xdt:Transform="SetAttributes" xdt:Locator="Match(name)" />
      </connectionStrings>
    
  5. Сохраните и закройте файл Web.Debug.config.

Развертывание веб-приложения

Следующий шаг — это развертывание проекта путем создания пакета. Затем можно импортировать этот пакет в службы IIS с помощью диспетчера служб IIS.

Создание пакета и его импорт в службы IIS

  1. В меню Проект выберите команду Построить пакет развертывания.

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

    ------ Построение начато: проект: AdventureWorks, конфигурация: отладка любого ЦП ------

    ...

    ------ Начало публикации: проект: AdventureWorks, конфигурация: отладка любого ЦП ------

    Выполнено преобразование Web.config с использованием Web.Debug.config в

    obj\Debug\TransformWebConfig\transformed\Web.config.

    ...

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

    obj\Debug\Package\PackageTmp.

    Добавление MSDeploy.dbFullSql (MSDeploy.dbFullSql).

    ...

    Добавление дочернего элемента sqlScript (MSDeploy.dbFullSql/

    dbFullSql[@path='c:\users\username\documents\visual studio 2010\

    Projects\AdventureWorks\AdventureWorksCS\obj\Debug\AutoScripts\

    ApplicationServices-Deployment_SchemaAndData.sql']/sqlScript).

    ...

    Добавление объявленного параметра "IIS Web Application Name".

    Добавление объявленного параметра "ApplicationServices-Deployment Connection String".

    Добавление объявленного параметра "AWLTConnectionString-Deployment Connection String".

    Пакет "AdventureWorks.zip" успешно создан в виде отдельного файла

    в следующем расположении:

    file:///c:/users/username/documents/visual%20studio%202010/

    Projects/AdventureWorks/AdventureWorksCS/obj/Debug/Package

    ...

    ========== Построение: успешно и без изменений: 1, с ошибками: 0, пропущено: 0 ==========

    ========== Публикация: успешно: 1, с ошибками: 0, пропущено: 0 ==========

  2. Скопируйте путь пакета развертывания в буфер обмена Windows, выполнив следующие действия.

    1. Если в обозревателе решений папка obj не видна, нажмите кнопку Показать все файлы на панели инструментов обозревателя решений.

    2. Последовательно разверните папки "obj", "Debug" и "Package".

    3. Выберите файл AdventureWorks.zip.

    4. В окне Свойства выберите и скопируйте значение поля Полный путь.

  3. В панели управления Windows щелкните Администрирование и выберите Диспетчер служб IIS.

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

  4. На панели Подключения разверните узел для вашего компьютера, разверните папку "Сайты" и выберите пункт Веб-сайт по умолчанию.

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

    IIS Manager

  5. На панели Действия щелкните ссылку Импорт приложения.

    Примечание

    Эта ссылка обычно присутствует, если установлено приложение Веб-развертывание, а Веб-развертывание устанавливается по умолчанию при установке Visual Studio.Если эта ссылка отсутствует, в Панели управления откройте Программы и компоненты, щелкните правой кнопкой Инструмент веб-развертывания, затем выберите команду Восстановить.

    Открывается мастер Импорт пакета приложения , и отображается диалоговое окно Выбор пакета.

  6. В поле Путь к пакету вставьте путь, скопированный ранее.

    Диалоговое окно Выбор пакета аналогично окну, показанному на следующей иллюстрации:

    Диалоговое окно "Выбор пакета"

  7. Нажмите кнопку Далее.

    Откроется диалоговое окно Выбор содержимого пакета, как показано на следующей иллюстрации:

    Диалоговое окно "Выбор содержимого пакета"

  8. Нажмите кнопку Далее.

    Откроется диалоговое окно Ввод данных о пакете приложения, как показано на следующей иллюстрации:

    Диалоговое окно "Ввод данных о пакете приложения"

    Значения по умолчанию пути к приложению и строк подключения — это значения, заданные на вкладке Пакет/Публикация веб-сайта.

  9. Нажмите кнопку Далее.

  10. Если отображается диалоговое окно, предлагающее проверить, установлена ли платформа ASP.NET 4 на вашем компьютере (как показано на следующей иллюстрации), назначьте пул приложений ASP.NET 4 веб-сайту по умолчанию.

    Приложение ASP.NET 4 не зарегистрировано в службах IIS

    Для этого выполните следующие действия.

    1. В диалоговом окне Ввод данных о пакете приложения нажмите кнопку Отмена.

    2. В меню Пуск ОС Windows щелкните правой кнопкой мыши пункт Командная строка и выберите Запуск от имени администратора.

    3. Перейдите в соответствующую папку платформы .NET Framework 4, например:

      C:\Windows\Microsoft.NET\Framework\v4.0.30319

      Если папка ОС Windows расположена на другом диске компьютера, замените букву C соответствующей буквой накопителя. В случае 64-разрядной операционной системы используйте Framework64 вместо Framework.

    4. Введите команду aspnet_regiis -iru -enable, затем нажмите клавишу ВВОД.

      Это средство регистрирует ASP.NET в службах IIS. Дополнительные сведения см. в разделе Программа регистрации IIS для ASP.NET (Aspnet_regiis.exe).

    5. Закройте окно Командная строка.

    6. В Диспетчере служб IIS выберите Веб-узел по умолчанию, затем выберите команду Основные настройки на панели Действие.

    7. Измените Пул приложений на пул приложений ASP.NET v4.0. (После завершения данного пошагового руководства можно восстановить исходное значение.)

    8. Повторите предыдущие шаги для установки пакета, начиная с гиперссылки Импорт приложения на панели Действия диспетчера служб IIS.

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

    Диалоговое окно "Ход установки и сводка"

  11. Нажмите кнопку Готово.

Тестирование развернутого веб-приложения

Последний этап данного пошагового руководства — это проверка правильности развертывания веб-приложения.

Тестирование веб-приложения

  1. Откройте браузер и введите следующий URL-адрес:

    http://localhost/AdventureWorks

    Отображается страница Default.aspx. Она выглядит так же, как при запуске в Visual Studio. Наличие таблицы продуктов означает, что база данных AdventureWorksLT развернута успешно.

  2. Щелкните ссылку Вход.

  3. Введите "новый_пользователь" в поля Имя пользователя и Пароль, затем щелкните Вход.

    Снова отображается страница Default.aspx, при этом рядом со ссылкой Выход отображается текст Добро пожаловать, новый_пользователь!. Это означает, что база данных членства ASP.NET развернута успешно.

Следующие действия

В данном пошаговом руководстве был создан проект веб-приложения на базе файловой системы, содержащий две базы данных. Он был развернут в веб-приложение служб IIS, в котором используется одна база данных.

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

См. также

Основные понятия

Карта содержимого развертывания ASP.NET