ASP.NET веб-развертывания с помощью Visual Studio: свойства проекта

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

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

В этой серии руководств показано, как развернуть (опубликовать) веб-приложение ASP.NET для Служба приложений Azure веб-приложения или стороннего поставщика услуг размещения с помощью Visual Studio 2012 или Visual Studio 2010. Сведения о серии см. в первом руководстве этой серии.

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

Некоторые параметры развертывания настраиваются в свойствах проекта, которые хранятся в файле проекта ( CSPROJ - или VBPROJ-файле ). В большинстве случаев значения по умолчанию для этих параметров являются нужными, но для работы с этими параметрами можно использовать пользовательский интерфейс свойств проекта , встроенный в Visual Studio. В этом руководстве вы изучите параметры развертывания в свойствах проекта. Вы также создаете файл-заполнитель, который приводит к развертыванию пустой папки.

Настройка параметров развертывания в окне свойств проекта

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

В Обозреватель решений щелкните правой кнопкой мыши проект ContosoUniversity, выберите Свойства, а затем выберите вкладку Веб-пакет/публикация.

Вкладка

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

Выбор конфигурации сборки выпуска

Если выбраны активные (выпуск) или Выпуск , вы увидите значения, которые будут действовать при развертывании с помощью конфигурации сборки выпуска:

  • В поле Элементы для развертывания выбран параметр Только файлы, необходимые для запуска приложения . Другие параметры: Все файлы в этом проекте или Все файлы в этой папке проекта. Не изменяя выбор по умолчанию, вы избегаете развертывания файлов исходного кода, например. Этот параметр является причиной того, что папки, содержащие SQL Server Compact двоичные файлы, должны быть включены в проект. Дополнительные сведения об этом параметре см. в статье Почему не развертываются все файлы в папке проекта? статьи часто задаваемые вопросы о развертывании проекта ASP.NET веб-приложения.
  • Выбран параметр Исключить созданные отладочные символы . При использовании этой конфигурации сборки отладка выполняться не будет.
  • Выбран параметр Включить все базы данных, настроенные на вкладке Пакет/Публикация SQL . Указывает, будет ли Visual Studio развертывать базы данных, а также файлы. Хотя в метке проверка упоминается только вкладка Пакет/публикация SQL, очистка этого проверка также отключит развертывание базы данных, настроенное в профиле публикации. Вы сделаете это позже, поэтому поле проверка должно оставаться выбранным. Вкладка Пакет/публикация SQL используется для устаревшего метода публикации базы данных, который вы не будете использовать в этих руководствах.
  • Раздел Параметры пакета веб-развертывания не применяется, так как вы используете публикацию одним щелчком в этих руководствах.

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

Убедитесь, что папка Elmah развернута.

Как вы видели в предыдущем руководстве, пакет NuGet Elmah предоставляет функциональные возможности для ведения журнала ошибок и создания отчетов. В приложении Университета Contoso Elmah настроено для хранения сведений об ошибках в папке с именем Elmah:

Папка Elmah

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

Как вы видели ранее в этом руководстве, для параметра Элементы для развертывания на вкладке Пакет/Публикация веб-сайта задано значение Только файлы, необходимые для запуска этого приложения. В результате файлы журналов, созданные Elmah в разработке, не будут развернуты, что и должно произойти. (Для развертывания они должны быть включены в проект, а для их свойства Действие сборки должно быть задано значение Содержимое. Дополнительные сведения см. в разделе Почему не все файлы в папке проекта развертываются? статьи часто задаваемые вопросы о развертывании проекта веб-приложения ASP.NET). Однако веб-развертывание не создаст папку на целевом сайте, если в нее не будет по крайней мере один файл для копирования. Таким образом, вы добавите в папку файл.txt , который будет выступать в качестве заполнителя, чтобы папка была скопирована.

В Обозреватель решений щелкните правой кнопкой мыши папку Elmah, выберите Добавить новый элемент и создайте текстовый файл с именем Placeholder.txt. Поместите в него следующий текст: "Это файл-заполнитель, чтобы убедиться, что папка развернута" и сохраните файл. Это все, что нужно сделать, чтобы убедиться, что Visual Studio развертывает этот файл и папку, в которую он находится, так как свойство Действие сборки.txt файлов имеет значение Content по умолчанию.

Итоги

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