Приступая к работе с инструментами Windows Azure для Visual Studio
Это пошаговое руководство покажет, как использовать инструменты Windows Azure для Visual Studio. Эти инструменты позволяют быть производительнее при разработке приложений Windows Azure. Инструменты позволяют выполнять и отлаживать приложение локально перед его публикацией в Windows Azure. Для выполнения этих задач можно использовать следующие процедуры:
В этой процедуре предполагается, что инструменты Windows Azure еще не установлены. Если вы уже установили инструменты Windows Azure, начините со следующей процедуры о том, как создать приложение Windows Azure.
Установка инструментов Windows Azure
Для установки инструментов Windows Azure, в строке меню, выберите Файл, Создать, Проект. В списке Установленные шаблоны выберие узел Visual Basic или Visual C# и выберите узел Облако, содержащий шаблон проекта с именем Включить инструменты Windows Azure.
ПримечаниеЭтот шаблон отображается в списке только если вы ранее не установили инструменты Windows Azure на этом компьютере.

Чтобы загрузить инструменты, выберите кнопку ОК.
Отображается вкладка Инструменты Windows Azure.
Чтобы начать загрузку, выберите кнопку Загрузить Windows Azure Tools. Веб-установщик теперь отображается. Следуйте инструкциям веб-установщика для установки последней версии инструментов Windows Azure и SDK Windows Azure.
ПримечаниеИнструментам Windows Azure требуются службы IIS версии 7 или более поздней или IIS Express. Для установки IIS или IIS Express воспользуйтесь Установщик веб-платформы Microsoft.
Важно |
|---|
Чтобы обновить шаблон для отображения шаблона Проект Windows Azure, вам возможно потребуется перезапустить Visual Studio, прежде чем вы можете продолжить шаги в следующих процедурах. |
Приложение Windows Azure состоит из ролей, которые выполняют действия, необходимые для приложения. Каждый экзмепляр работает на отдельной виртуальная машина в облаке при публикации приложения в Windows Azure. Дополнительные сведения о разработке приложения Windows Azure см. в разделах Planning and Designing Applications for Windows Azure и Developing Applications for Windows Azure.
Создание приложения Windows Azure
Запустите Visual Studio с правами администратора.
Для создания проекта Windows Azure, в строке меню, выберите Файл, Создать, Проект.
В шаблонах проектов C# и VB, которые отображаются в Установленные шаблоны, выберите тип шаблона Облако, который был обновлен. Выберите Проект Windows Azure. В списке .NET Framework выберите целевую платформу, которую вы хотите использовать.
ПримечаниеVisual Studio 2012 поддерживает .NET Framework 4.5 и .NET Framework 4, а Visual Studio 2010 поддерживает .NET Framework 4 и .NET Framework 3.5.
В поле Имя введите имя для вашего проекта и нажмите кнопку ОК.
Появится диалоговое окно Создать проект Windows Azure.
Чтобы добавить веб-роль в решение, выберите Веб-роль ASP.NET и затем выберите стрелку вправо. В решение Windows Azure можно добавить несколько веб-ролей и рабочих ролей.
Роли отображаются в области Решение Windows Azure диалогового окна.
Чтобы переименовать WebRole1 в MyWebRole, наведите курсор над WebRole1и выберите значок карандаша на правой стороне. Введите новое имя и выберите кнопку Ввод. (Клавиатура: переместить фокус на WebRole1 и нажать F2 для редактирования.)
Нажмите кнопку ОК, чтобы создать новый проект Windows Azure.
Теперь у вас есть решение с следующими двумя проектами:
Проект Windows Azure
Веб-роль, которая является веб-приложением ASP.NET
Обозреватель решений будет выглядеть следующим образом.

Приведенная ниже процедура добавляет код в проект веб-роли. Этот веб-проект добавляет данные к хранилищу больших двоичных объектов и записывает сообщение диагностики, чтобы помочь вам отлаживать приложение. Этот код можно выполнить локально перед публикацией в Windows Azure.
Добавление кода в проект веб-роли
Чтобы открыть default.aspx в представлении конструирования, откройте файл меню ярлыков для файла default.aspx и выберите Открыть в конструкторе.
Чтобы открыть панель элементов, выберите значок панели элементов. Чтобы добавить кнопку на страницу, откройте контекстное меню для Кнопка в представлении Панель элементов и выберите Копировать. В окне редактора для Default.aspx выберите Проектирование, затем откройте контекстное меню и выберите Вставить. Чтобы добавить обработчик событий щелчка для кнопки, дважды щелкните новую кнопку, добавленную на страницу.

В обработчике событий щелчка с именем Button1_Click, добавьте код, который будет загрузить какой-нибудь текст в службу blob-объектов и добавлять сообщение диагностики. Чтобы добавить необходимые типы Windows Azure, добавьте следующие инструкции using в default.aspx.cs:
using Microsoft.WindowsAzure; using Microsoft.WindowsAzure.StorageClient; using Microsoft.WindowsAzure.ServiceRuntime;
Добавьте следующий код для выполнения этих задач:
Создание экземпляра CloudStorageAccount из строки подключения в параметрах конфигурации
Создание контейнера BLOB-объектов
Загрузить текстовый большой двоичный объект для этого контейнера
Добавить сообщение диагностики для веб-роли
protected void Button1_Click(object sender, EventArgs e) { // Setup the connection to Windows Azure Storage var storageAccount = CloudStorageAccount.Parse(RoleEnvironment.GetConfigurationSettingValue("MyConnectionString")); var blobClient = storageAccount.CreateCloudBlobClient(); // Get and create the container var blobContainer = blobClient.GetContainerReference("quicklap"); blobContainer.CreateIfNotExist(); // upload a text blob var blob = blobContainer.GetBlobReference(Guid.NewGuid().ToString()); blob.UploadText("Hello Windows Azure"); // log a message that can be viewed in the diagnostics tables called WADLogsTable System.Diagnostics.Trace.WriteLine("Added blob to Windows Azure Storage"); }Чтобы добавить точку останова в строке кода, добавленного в обработчик событий Button1_Click, откройте контекстное меню для строки кода “blob.UploadText("Hello Windows Azure");” и затем выберите Точка останова, Вставить точку останова.
Добавьте код, чтобы настроить монитор диагностики для передачи журналов каждую секунду и запустите монитор. Монитор диагностики использует строку соединения, которое добавляется при создании проекта Windows Azure. В начале метода OnStart в WebRole.cs должен быть добавлен следующий код:
//Get the configuration object DiagnosticMonitorConfiguration diagObj = DiagnosticMonitor.GetDefaultInitialConfiguration(); //Set the service to transfer logs every second to the storage account diagObj.Logs.ScheduledTransferPeriod = TimeSpan.FromSeconds(1); //Start Diagnostics Monitor with the new storage account configuration DiagnosticMonitor.Start("Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString", diagObj);
ПримечаниеЕсли отладка выполняется на платформе Windows Azure, вы не хотите передавать журналы каждую секунду. Это значение такое низкое только для целей этого примера.
Примечание |
|---|
Как часть шаблона ролей в файл web.config добавляется прослушиватель трассировки Windows Azure. Прослушиватель трассировки будет направлять сообщения трассировки и отладки в систему диагностики Windows Azure. |
Можно построить приложение и затем вы можете запустить и отладить это приложение локально с помощью эмуляторов вычислений и хранения, которые предоставляются как часть инструментов Windows Azure. Это позволяет разрабатывать приложения локально перед публикацией в Windows Azure. Можно просмотреть данные, добавляемые к хранилищу, и любые диагностические сообщения с помощью эмуляторов.
Построение приложения Windows Azure
Чтобы выполнить построение проекта, откройте контекстное меню для проекта Windows Azure и затем выберите Построение.
Чтобы просмотреть вывод построения, откройте контекстное меню для проекта Windows Azure и затем выберите Открыть папку в проводнике Windows. Перейдите в каталог bin\debug, чтобы просмотреть вывод построения.

Чтобы изменить параметры для каждой роли
Чтобы изменить параметры, выберите роль в узле Роли в проекте Windows Azure в обозревателе решений, откройте контекстное меню для роли и выберите пункт Свойства.
Отобразятся страницы свойств для этой веб-роли. Любой элемент или атрибут уровня роли в определении службы и файлах конфигурации службы можно отредактировать с помощью страниц свойств.

ВажноЕсли вы хотите запустить приложение Windows Azure локально для его отладки, а также требуется опубликовать приложение Windows Azure, это обычно требует разных значений параметров для ваших ролей. Например может потребоваться запустить четыре экземпляра роли в Windows Azure, но только один экземпляр при отладке в вашей местной среде. Вы можете иметь несколько конфигураций службы в проекте Windows Azure, которые позволяют определить эти различные значения. Затем можно выбрать какой из них вы хотите использовать. Дополнительные сведения об этом см. в разделе Настройка проекта Windows Azure.
Чтобы изменить все конфигурации службы, в списке Настройка службы выберите Все конфигурации.
Чтобы изменить количество экземпляров, в поле Число экземпляров введите 2.
Чтобы перейти на вкладку Параметры, выберите Параметры. (Клавиатура: переместиться на Конфигурация и нажать стрелку вниз.)
Чтобы настроить Visual Studio для использования эмулятора локального хранилища при запуске или отладке приложения Windows Azure, необходимо добавить строку подключения, которая используется в обработчике события щелчка кнопки. Для этого сделайте следующее.
На вкладке Параметры выберите кнопку Добавить параметр.
В поле Имя введите MyConnectionString.
В поле со списком Тип выберите "Строка подключения".
Выберите многоточие в текстовом поле Значение. Откроется диалоговое окно Строка подключения к учетной записи хранилища. Выберите Использование эмулятора хранилища Windows Azure и затем выберите кнопку ОК.
На панели инструментов, выберите значок Сохранить.
После выполнения этого пошагового руководства и готовности к публикации в Windows Azure, можно перейти на эту вкладку Параметры для изменения значения для этой строки подключения для конфигурации службы Облако (ServiceConfiguration.Cloud.cscfg) на использования учетной записи хранилища Windows Azure. Затем можно использовать эту конфигурацию службы при публикации этого приложения Windows Azure.
Для отладки проекта Windows Azure
В строке меню выберите Отладка, Начать отладку (клавиатура: F5).
ВажноЕсли проект Windows Azure не установлен как проект запуска, следующее сообщение об ошибке возникает при нажатии кнопки для вызова точки останова: External component has thrown an exception (внешний компонент создал исключение). Ошибка возникает потому что структура разработки должна быть инициализирована для вызова вызовов Windows Azure API. Чтобы задать проект Windows Azure как проект для запуска, откройте контекстное меню для проекта Windows Azure и затем выберите Назначить запускаемым проектом.
Запущен эмулятор хранения и эмулятор вычисления для Visual Studio. Эти эмуляторы позволяют выполнять и отлаживать приложение Windows Azure локально перед его публикацией в Windows Azure.
ПримечаниеЗначок Windows Azure отображается в области уведомления, что позволяет просматривать пользовательский интерфейс эмулятора вычислений и эмулятора хранилища или завершать работу этих служб.
Если вы впервые используете эмулятор хранилища, появится диалоговое окно Инициализация хранилища разработки. Когда завершится процесс инициализации, выберите кнопку ОК, чтобы закрыть диалоговое окно.
Браузер автоматически запускается и указывает на веб-сайт ASP.NET.
Для управления локальными разевртываниями откройте меню ярлыков для значка Windows Azure в области уведомлений, а затем выберите Показать пользовательский интерфейс эмулятора среды.
Появится Эмулятор вычисления Windows Azure.
Выберите MyWebRole для отображения экземпляров веб-роли, как показано на следующем рисунке. Выбор определенного экземпляра для просмотра только этого экземпляра.
ПримечаниеЭкземпляров веб-роли два, так как мы задали число экземпляров для роли, равное 2. Каждый из экземпляров может обрабатывать запрос.

Чтобы сработала точка останова, установленная в отладчике, выберите созданную кнопку.
Для пошагового прохода строк кода до тех пор, пока вы не загрузили текст в большой двоичный объект и зарегистрировали сообщение в таблице диагностики, нажмите F10 три раза.
Чтобы просмотреть данные, добавленные в большой двоичный объект, выберите в строке меню Вид, Обозреватель серверов. Откройте узел Хранилище Windows Azure в дереве и затем выберите узел Разработка, Большие двоичные объекты. Дважды щелкните узел quicklap, как показано на следующем рисунке:

Данные в BLOB-объекте отображается в вкладке quicklab.
Для просмотра данных, дважды щелкните запись в списке.
Чтобы просмотреть диагностические сообщения, которые вы записали в журнал, в строке меню выберите Вид, Обозреватель серверов, если это уже не видно. Откройте узел Хранилище Windows Azure в дереве и затем выберите узел Разработка, Таблицы. Дважды щелкните узел WADLogsTable.
Диагностические сообщения отображаются в вкладке WADLogsTable. Данные для сообщения — последний столбец в таблице.
Чтобы просмотреть журнал активности для Windows Azure, в строке меню выберите Вид, Другие окна, Журнал действий Windows Azure. Журнал действий позволяет следить за состоянием длительных операций. Вы увидите запись, соответствующую загруженному текстовому большому двоичному объекту.
Если используется эмулятор хранилища откройте меню ярылков для значка Windows Azure в области уведомлений и выберите Показать пользовательский интерфейс эмулятора хранилища, чтобы открыть приведенное ниже диалоговое окно, позволяющее управлять запущенными службами хранилища и изменять данные.

С помощью инструментов Windows Azure для Microsoft Visual Studio можно опубликовать приложение Windows Azure прямо из Visual Studio.
Прежде чем можно будет опубликовать приложение Windows Azure, вы должны получить учетную запись Microsoft и подписку Windows Azure. Кроме того необходимо настроить размещенную службу и учетную запись хранения в портале управления Windows Azure для использования приложением. Дополнительные сведения о том, как задавать эти службы, см. в разделе Настройка служб, необходимых для публикации облачной службы из Visual Studio.
Когда вы публикуете, можно выбрать среду развертывания для размещенной службы. Вы также должны выбрать учетную запись хранения, которая используется для хранения пакета приложения для развертывания. После развертывания пакет приложения удаляется из хранилища учетных записей.
Публикация приложения Windows Azure из Visual Studio
Если нужно изменить строки соединения в приложении для использования служб хранения Windows Azure, выполните следующие действия:
В обозревателе решений, в проекте Windows Azure откройте меню ярлыков для веб-роли, которая обращается к службам хранилища, и выберите пункт Свойства.
На странице свойств роли выберите вкладку Параметры.
Чтобы изменить только параметры конфигурации службы для конфигурации Облако, в списке Конфигурация службы выберите Облако. Затем можно использовать эту конфигурацию службы при публикации приложения Windows Azure.
Чтобы изменить параметры строки подключения, выберите … рядом с параметром.
Откроется диалоговое окно Создание строки подключения к хранилищу.
В поле Подключиться с помощью выберите вариант Ваша подписка.
В списке Подписка выберите подписку. Если список не включает нужную подписку, выберите ссылку Загрузить параметры публикации.
В списке Имя учетной записи выберите имя учетной записи хранилища.
Инструменты Windows Azure получают учетные данные хранилища автоматически с помощью PUBLISHSETTINGS-файла. Для указания параметров учетной записи хранилища вручную, получите имя учетной записи хранилища и первичный ключ из Портала управления, а затем выберите Введенные вручную учетные данные.
Вы должны выбрать один из следующих параметров, чтобы определить, как служба будет получать доступ к учетной записи хранилища:
Использовать HTTP. Это стандартный параметр. Пример: http://<account name>.blob.core.windows.net.
Использовать HTTP для безопасного соединения. Пример: https://<accountname>.blob.core.windows.net.
Укажите настраиваемые конечные точки для каждой из трех служб. Затем можно ввести эти конечные точки в поле для конкретной службы.
ПримечаниеПри создании пользовательских конечных точек этот вариант позволяет создать более сложную строку подключения. Когда вы используете этот формат строки, можно указать конечные точки службы хранения, которые включают пользовательские доменное имя, которое вы зарегистрировали для вашей учетной записи хранения в службе больших двоичных объектов. Кроме того, можно предоставить доступ только BLOB-объектам в одном контейнере с использованием подписи общего доступа. Дополнительные сведения о создании пользовательских конечных точек см. в разделе How to Configure Connection Strings.
Чтобы сохранить эти изменения строки подключения, выберите кнопку ОК.
После того, как вы сохранили эти изменения, можно собрать и запустить приложение Windows Azure из среды Visual Studio с помощью обновленной конфигурации службы, и убедиться, что оно работает как ожидалось в отношении служб хранения Windows Azure. Для получения дополнительных сведений о том, как выбрать конфигурацию службы, чтобы запускать и отлаживать локально, см. Пошаговое руководство. Настройка проекта Windows Azure в Visual Studio.
Чтобы опубликовать приложение, откройте контекстное меню для своего проекта Windows Azure, который содержит роль в обозревателе решений. Затем выберите Опубликовать, как показано на следующем рисунке:

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

ВниманиеФайл параметров содержит сведения о сертификате. Сохраните файл в безопасное место.
Нажмите кнопку Импорт для заполнения списка подписок.
ПримечаниеФайл параметров имеет расширение .publishsettings.
В списке Выберите подписку выберите подписку для этого развертывания.
Если выбрать вариант <Управление…>, можно создавать, изменять и удалять подписки.
После указания правильный сведений о подписке нажмите кнопку Далее, чтобы открыть страницу Параметры, а затем выберите вкладку Общие параметры.
В списке Среда выберите среду развертывания, которая используется для размещения облачной службы.
Можно выполнить развертывание в пустую среду или в среду, занятую другим развертыванием.
В списке Конфигурация построениявыберите требуемую конфигурацию, например Выпуск.
В списке Конфигурация службы выберите Облако.
Для настройки подключений удаленного рабочего стола для этой среды развертывания, таким образом, чтобы можно подключиться к виртуальной машине, выполняющей каждый экземпляр роли, выберите ссылку Настроить подключения к удаленному рабочему столу.
Дополнительные сведения см. в разделе Использование удаленного рабочего стола для служб Windows Azure [text wont show up].
Выберите вкладку Дополнительные параметры.
В списке Учетная запись хранилища выберите учетную запись для отправки пакета службы в эту учетную запись в рамках процесса развертывания.
ПримечаниеЭта учетная запись хранилища не должна быть учетной записью хранилища, которую вы планируете использовать для данных для вашего приложения.
Если вы не хотите автоматически перезаписать существующее развертывание при публикации нового построений приложений, установите флажок Обновление развертывания.
Дополнительные сведения о параметрах обновления развертывания см. в разделе Мастер публикации приложений Windows Azure.
Для развертывания создается имя по умолчанию. Чтобы изменить это имя, можно ввести новое имя или изменить имя по умолчанию в поле Метка развертывания. Это имя используется в портале управления.
Чтобы добавить дату и время к метке развертывания, установите флажок Добавить текущие дату и время.
Для включения IntelliTrace для этого развертывания, установите флажок Включить IntelliTrace.
IntelliTrace предоставляет отладочную информацию для вашего приложения, которую можно использовать для пошагового выполнения кода из Visual Studio Ultimate. Дополнительные сведения см. в разделе Отладка с использованием IntelliTrace.
ПримечаниеIntelliTrace можно включить только при публикации приложения из Visual Studio Ultimate.
Чтобы включить профилирование для этого развертывания для определения производительности приложения Windows Azure, установите флажок Включить профилирование. Профилирование предоставляет сведения о производительности для вашего приложения. Дополнительные сведения о настройке параметров для профилирования см. в разделе Тестирование производительности облачной службы.
ВажноВы можете включить IntelliTrace или профилирование при публикации приложения Windows Azure. Нельзя включить оба.
(Необязательно) Если вы публикуете из Visual Studio и вы установили последнюю версию инструментов Windows Azure, можно также включить веб-развертывание для всех веб-ролей. Требования и подробные шаги для этого, см. в разделе Чтобы включить веб-развертывание при публикации приложения.
Чтобы опубликовать приложение Windows Azure, нажмите кнопку Опубликовать. Visual Studio запускает процесс развертывания. Следить за ходом развертывания можно в окне Журнал действий Windows Azure. Этот журнал отображается автоматически при запуске процесса развертывания. Можно раскрыть соответствующий строчный элемент, чтобы просмотреть детали в журнале действий, как показано на следующем рисунке.

(Необязательно) Чтобы отменить процесс развертывания, откройте контекстное меню для элемента строки в журнале активности и выберите Отменить и удаленить. Это останавливает процесс развертывания и удаляет среду развертывания из Windows Azure.
ПримечаниеЧтобы удалить эту среду развертывания, после того, как он был развернут, вы должны использовать Портал управления.
(Необязательно) После запуска экзепмляров ролей Visual Studio автоматически отображает среду развертывания в узле Вычисление Windows Azure в обозревателе серверов. Отсюда можно видеть состояние отдельных экземпляров ролей. Для получения дополнительных сведений о том, как использовать обозреватель серверов для просмотра развертываний, см. Просмотр состояния облачной службы с использованием обозревателя серверов.
На следующем рисунке показаны экземпляры роли в состоянии Инициализация.

Для доступа к приложению после развертывания выберите стрелку рядом с развертыванием, когда в журнале действий Windows Azure отображается статус Завершено. Чтобы запустить браузер с приложением, выберите гиперссылку, отображаемую в сведениях о развертывании.
При использовании Visual Studio 2010 Ultimate с ролями .NET 4 и включении IntelliTrace как части развертывания, можно выполнять запросы для получения и просмотра журналов IntelliTrace для экземпляра роли в узле Вычисления Windows Azure в обозревателе серверов.
Дополнительные сведения об IntelliTrace и настройках для IntelliTrace см. в разделе Отладка опубликованной облачной службы с помощью IntelliTrace и Visual Studio.
Примечание |
|---|
Отладка IntelliTrace доступна только для и Visual Studio 2010 Ultimate, 64-разрядный выпуск, и только для приложений Windows Azure, разработанных для .NET Framework 4 и .NET Framework 4.5. IntelliTrace можно использовать с Visual Studio 2010 Ultimate, 32-разрядный выпуск, если установить необходимое исправление QFE. |
Для просмотра журналов IntelliTrace, откройте контекстное меню для экземпляра, для которого вы хотите просмотреть их и выберите Просмотр журналов IntelliTrace, как показано на следующем рисунке:

Журналы для этого экземпляра будут собраны, загружены в службу больших двоичных объектов, а затем загружены и открыты в Visual Studio.
Открыв журнал в Visual Studio, вы можете воспользоваться возможностями отладки IntelliTrace в Visual Studio для отладки размещенной службы. Дополнительные сведения об использовании Intellitrace см. в статье Отладка с помощью IntelliTrace.