Пошаговое руководство. Публикация веб-узла
Обновлен: Ноябрь 2007
В данном разделе содержатся пошаговые инструкции по использованию служебной программы "Опубликовать веб-узел" средства веб-разработки Microsoft Visual Web Developer для компиляции веб-узла и последующего копирования вывода на активный веб-узел.
Если требуется развернуть готовый веб-узел на сервере, можно воспользоваться служебной программой "Опубликовать веб-узел", входящей в состав средства Microsoft Visual Web Developer. Данная программа выполняет предварительную компиляцию страниц и кода веб-узла и записывает вывод компилятора в заданную папку. Затем можно скопировать вывод на целевой веб-сервер и выполнять приложение оттуда.
![]() |
---|
Программа публикации веб-узла недоступна в Express-выпуске Visual Web Developer. |
В данном пошаговом руководстве представлены следующие задачи:
- Использование служебной программы "Опубликовать веб-узел" для создания предварительно откомпилированного вывода.
Обязательные компоненты
Для выполнения инструкций данного пошагового руководства необходимы следующие компоненты.
Visual Web Developer.
Visual Web Developer Express Edition не поддерживает служебную программу "Опубликовать веб-узел".
Доступ к Microsoft Internet Information Services (IIS) для тестирования результата публикации веб-узла.
В данном пошаговом руководстве предполагается, что IIS выполняется на вашем компьютере. В качестве альтернативы можно использовать любой экземпляр IIS, в котором у вас имеются разрешения на создание виртуальных каталогов.
Создание веб-узла
Если вы уже создали веб-узел в Visual Web Developer, выполнив Пошаговое руководство. Создание базовой веб-страницы в Visual Web Developer, то можно использовать этот веб-узел и перейти к следующему разделу. В противном случае создайте новый веб-узел и страницу, выполнив следующие действия.
В данном пошаговом руководстве будет создан веб-узел на базе файловой системы.
Создание веб-узла на базе файловой системы
Откройте Visual Web Developer.
В меню Файл выберите Создать, Веб-узел.
Откроется диалоговое окно Создать веб-узел.
В группе Установленные шаблоны Visual Studio выберите Веб-узел ASP.NET.
В крайнем левом списке Расположение выберите Файловая система.
В крайнем правом списке Расположение введите имя папки, где следует хранить страницы веб-узла.
Например, введите имя папки C:\WebSites.
В списке Язык выберите язык программирования, с которым вы предпочитаете работать.
Нажмите кнопку ОК.
Visual Web Developer создаст папку и новую страницу с именем Default.aspx.
Создание тестовой страницы и класса
В данном руководстве описывается процесс создания веб-страницы с несколькими элементами управления. Кроме того, вы создадите файл класса, который будет использоваться данной веб-страницей. Создание и веб-страницы, и отдельного класса позволит вам увидеть, как осуществляется предварительная компиляция содержимого веб-узла.
Для начала вы создадите новую страницу, а затем добавите на нее кнопку и надпись.
Создание страницы и добавление элементов управления
В обозревателе решений щелкните правой кнопкой мыши имя веб-узла и выберите Добавление нового элемента.
Под заголовком Установленные шаблоны Visual Studio выберите Web Forms.
В поле Имя введите SamplePage.aspx.
В списке Язык выберите язык программирования, с которым вы предпочитаете работать.
Нажмите кнопку Добавить.
Перейдите в представление конструирования.
Из группы Стандартная панели элементов перетащите на страницу элемент управления Label.
Из группы Стандартная панели элементов перетащите на страницу элемент управления Button и поместите его рядом с элементом управления Label.
Далее вы создадите исходный код для простого класса с единственным свойством. Этот класс будет использоваться в коде страницы.
Создание класса
В обозревателе решений щелкните правой кнопкой мыши имя веб-узла, выберите команду Добавить папку ASP.NET, а затем выберите App_Code.
В обозревателе решений в составе приложения появится новая папка с именем App_Code. Папка App_Code является зарезервированной папкой приложения ASP.NET. Дополнительные сведения см. в разделе Макет веб-узла ASP.NET.
Щелкните правой кнопкой мыши папку App_Code и выберите команду Добавление нового элемента.
Под заголовком Установленные шаблоны Visual Studio выберите Class.
В поле Имя введите TestClass.
В списке Язык выберите язык программирования, с которым вы предпочитаете работать.
Примечание.
Выбранный вами язык программирования не обязательно должен быть тем же, который использовался в странице ASPX.
Нажмите кнопку Добавить.
Visual Web Developer создаст файл с каркасом класса на заданном вами языке программирования. Заметьте, что расширение имени файла класса соответствует выбранному вами языку. Например, если создается класс на языке Microsoft Visual Basic, файл этого класса имеет расширение VB.
Создайте свойство с именем TestProperty.
Когда вы закончите, содержимое файла класса должно выглядеть примерно так:
Imports Microsoft.VisualBasic Public Class TestClass Private TestPropertyValue As String Public Property TestProperty() As String Get Return TestPropertyValue End Get Set(ByVal value As String) TestPropertyValue = value End Set End Property End Class
using System; public class TestClass { public TestClass() { } private string TestPropertyValue; public string TestProperty { get{ return TestPropertyValue; } set{ TestPropertyValue = value; } } }
Теперь класс можно использовать в коде страницы. Заметьте, что компилировать файл класса перед использованием не нужно.
Использование класса в коде страницы
Откройте файл Profiles.aspx и переключитесь в режим Конструктор.
Дважды щелкните элемент управления Button для создания обработчика его события Click.
В обработчике события Click создайте экземпляр класса TestClass, который вы создали в предыдущей процедуре, присвойте значение свойству TestProperty и отобразите значение свойства TestProperty в элементе управления Label.
Полный код будет выглядеть примерно следующим образом:
Protected Sub Button1_Click(ByVal sender As Object, _ ByVal e As System.EventArgs) Dim testClass As New TestClass testClass.TestProperty = "Hello" Label1.Text = testClass.TestProperty End Sub
protected void Button1_Click(object sender, EventArgs e) { TestClass testClass = new TestClass(); testClass.TestProperty = "Hello"; Label1.Text = testClass.TestProperty; }
Проверка узла
Перед публикацией узла его можно проверить, чтобы убедиться, что он работает, как ожидалось.
Проверка веб-узла
Откройте страницу SamplePage.aspx.
Нажмите клавиши CTRL+F5.
Страница отобразится в обозревателе.
Нажмите кнопку Button и убедитесь, что в элементе управления Label отобразился текст.
Закройте обозреватель.
Публикация веб-узла
Теперь у вас есть веб-узел, который можно опубликовать. Это можно сделать в любом расположении, доступном на локальном компьютере или в сети, использующей любой протокол, поддерживаемый средством Visual Web Developer. Существуют следующие варианты копирования веб-узла:
скопировать папку в общую папку UNC, расположенную на другом компьютере в сети;
с помощью протокола FTP скопировать папку на сервер;
с помощью протокола HTTP выполнить копирование на сервер, поддерживающий серверные расширения FrontPage 2002 корпорации Майкрософт.
В этой части пошагового руководства описывается публикация веб-узла в локальной папке.
Публикация веб-узла
В меню Построение выберите команду Опубликовать веб-узел.
Откроется диалоговое окно Опубликовать веб-узел.
В поле Целевое расположение введите c:\CompiledSite.
Внимание!
Все данные в целевой папке и вложенных в нее папках будут удалены. Убедитесь, что вы не ввели имя папки, содержащей данные или вложенные папки с данными.
В данном пошаговом руководстве выполняется публикация в локальной папке. Можно также опубликовать узел в общей папке UNC. Если вы желаете выполнить публикацию на удаленном веб-узле через HTTP или FTP, в поле Целевое расположение следует ввести URL удаленного сервера.
Установка Разрешить этому предварительно скомпилированному узлу быть обновляемым определяет, что весь программный код компилируется в сборки, но ASPX-файлы (включая страницы ASP.NET, состоящие из одного файла) копируются в целевую папку как есть. В этом пошаговом руководстве выбирать эту установку не нужно. Подробные сведения см. в разделе Публикация веб-узлов.
Нажмите кнопку ОК.
Visual Web Developer выполнит предварительную компиляцию содержимого веб-узла и запишет вывод компилятора в заданную вами папку. В окне Выходные данные будут отображаться сообщения о ходе выполнения операции. Если во время компиляции произойдет ошибка, сообщение о ней появится в окне Выходные данные.
Если во время публикации произойдут ошибки, исправьте их и повторите шаг 1.
Анализ результатов выполнения команды публикации веб-узла
Целесообразно проверить результаты выполнения команды Опубликовать веб-узел, чтобы посмотреть, что сделал Visual Web Developer с файлами вашего узла.
Анализ результатов выполнения команды публикации веб-узла
В обозревателе Windows перейдите в папку, которую задали как целевую для команды Опубликовать веб-узел.
Откройте файл SamplePage.aspx в текстовом редакторе, таком как "Блокнот".
Заметьте, что этот файл не содержит разметки, которая там содержалась ранее. Вместо этого он является всего лишь местозаполнителем, который может использоваться в составе URL.
Перейдите в папку Bin.
Эта папка содержит файлы двух типов:
.скомпилированные файлы, соответствующие страницам;
.DLL-файлы, содержащие исполняемый код веб-узла, в частности код из созданного вами файла класса.
Помните, что страница, ее код и созданный вами отдельный файла класса скомпилированы в исполняемый код.
Проверка опубликованного веб-узла
Теперь можно проверить работу опубликованного веб-узла.
Проверка работы опубликованного веб-узла
Создайте виртуальный каталог IIS, указывающий на целевую папку публикации.
Для этого можно воспользоваться административными инструментами IIS или выполнить следующие действия.
В обозревателе Windows щелкните правой кнопкой мыши имя целевой папки и выберите команду Общий доступ и безопасность.
На вкладке Доступ через веб установите переключатель в положение Открыть общий доступ к этой папке.
Появится диалоговое окно Изменение псевдонима.
При желании измените псевдоним папки.
По умолчанию заданы разрешения на чтение и выполнение сценариев, таких как страницы ASP.NET.
Нажмите кнопку ОК, чтобы закрыть диалоговое окно Изменение псевдонима, а затем ее раз нажмите кнопку ОК для закрытия диалогового окна Свойства.
Откройте обозреватель и введите следующий URL.
https://localhost/CompiledSite/SamplePage.aspx
Появится страница SamplePage.aspx. Однако на этот раз вы видите ее версию, созданную средством предварительной компиляции для развертывания.
Следующие действия
Данное пошаговое руководство продемонстрировало базовый процесс публикации предварительно откомпилированного веб-узла. Для дальнейшего исследования можно выполнить следующие действия.
Поэкспериментируйте со средством "Копировать веб-узел", которое копирует веб-узел в целевую папку как есть (в виде исходного кода).
Дополнительные сведения см. в разделе Использование средства копирования веб-узлов.
Опубликуйте веб-узел на удаленном веб-сервере IIS.
См. также
Задачи
Пошаговое руководство. Копирование веб-узла с помощью средства копирования веб-узла