Опубликован: 30.05.2011 | Доступ: свободный | Студентов: 2251 / 144 | Оценка: 4.12 / 4.41 | Длительность: 12:00:00
Самостоятельная работа 6:

Работа с Windows Azure Blob

< Лекция 14 || Самостоятельная работа 6: 1234567 || Лекция 15 >
Аннотация: Соединение с хранилищем. Добавление и удаление Blob - объекта.

В качестве примера рассмотрим работу простого веб - приложения для загрузки изображений в хранилище Windows Azure Blob:

  • подготовка приложения;
  • загрузка и отображение изображений;
  • удаление сущностей;
  • копирование сущностей.

Создайте проект облачной службы и добавьте веб - роль в решение.

В свойствах веб - роли определим строку подключения к эмулятору хранилища Azure.


Рис. 20.1.

Также нам понадобится строковый параметр ContainerName, определяющий имя Blob - контейнера для изображений.


Рис. 20.2.

Задание 1. Подготовка приложени

Создадим веб - форму AzureBlobSamle.aspx и добавим ссылки в C# класс данной страницы

using Microsoft.WindowsAzure;
using Microsoft.WindowsAzure.ServiceRuntime;
using Microsoft.WindowsAzure.StorageClient;
using System.Configuration;

Далее, поскольку Blob - контейнер должен быть доступным для анонимных пользователей необходимо создать метод, подтверждающий наличие контейнера:

private void EnsureContainerExists()
        {
            var container = GetContainer();
            container.CreateIfNotExist();
            var permissions = container.GetPermissions();
            permissions.PublicAccess = BlobContainerPublicAccessType.Container;
            container.SetPermissions(permissions);
        }

Как видно, в данном методе присутствует ссылка на несуществующий пока GetConteiner() , который должен возвращать Blob-контейнер для осуществления операций с Blob-объектами.

private CloudBlobContainer GetContainer()
        {
            CloudStorageAccount.SetConfigurationSettingPublisher(
                (configName, configSettingPublisher) =>
                {
                    var connectionString =
                        RoleEnvironment.GetConfigurationSettingValue(configName);
                    configSettingPublisher(connectionString);
                }
            );

            var account = CloudStorageAccount.FromConfigurationSetting("DataConnectionString");
            var client = account.CreateCloudBlobClient();
            return client.GetContainerReference(RoleEnvironment.GetConfigurationSettingValue("ContainerName"));
        }

Интерфейс

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


Рис. 20.3.
< Лекция 14 || Самостоятельная работа 6: 1234567 || Лекция 15 >
Роза Мальцева
Роза Мальцева
Игнат Гринько
Игнат Гринько

Примерно месяц назад получил на сайте код Дримспарк, сегодня вводил его на сайте Дримспарк, пишет: Недействительный код проверки. Проверьте правильность введенного кода. Код вводил методом: скопировать-вставить.

Дмитрий Дряничкин
Дмитрий Дряничкин
Россия, Казань
Атанас Маринов
Атанас Маринов
Болгария