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

Работа с Windows Azure Table

< Самостоятельная работа 4 || Самостоятельная работа 5: 1234567 || Лекция 13 >
Аннотация: Целью данной практической работы является работа с Windows Azure Table: создание таблицы, добавление данных, просмотр данных, редактирование и удаление сущностей таблицы.

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

Прежде всего создадим проект "AzureTableExample", необходимый для данной лабораторной работы.

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

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

Создание классов будущего приложения

Класс - Контакт.

Добавим следующие ссылки:

using Microsoft.WindowsAzure.StorageClient;

Контакт будет содержать следующую информацию:

  • Имя
  • Фамилию
  • Контактный телефон
  • Адрес электронной почты

Добавим C# класс нашей рабочей роли - Contact.cs и зададим необходимые свойства, унаследовав его от Microsoft.WindowsAzure.StorageClient.TableServiceEntity :

class Contact : Microsoft.WindowsAzure.StorageClient.TableServiceEntity
    {

    }

Определим требуемые свойства для класса контактов. И в конечном итоге, наш класс будет выглядеть следующим образом:

class Contact : Microsoft.WindowsAzure.StorageClient.TableServiceEntity
    {
        public String FirstName { get; set; }
        public String LastName { get; set; }
        public String TelNumber { get; set; }
        public String Email { get; set; }
    }

Класс - контекст для доступа ContactContext.cs

Нам понадобятся следующие ссылки:

using Microsoft.WindowsAzure;
using Microsoft.WindowsAzure.StorageClient;
using System.Data.Services.Client;

Создадим соответствующий C# - класс, унаследуем его от TableServiceContext и определим конструктор:

class ContactContext : TableServiceContext
    {
        public ContactContext (Uri baseAddress, StorageCredentials credentials): base(baseAddress.AbsoluteUri, credentials) {}
    }

Добавим свойство для возвращения data service - запроса для таблицы Contacts.

public IQueryable<Contact> ContactData
        {
            get
                {
                   return this.CreateQuery<Contact>("Contacts"); 

                }
         }

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

class ContactContext : TableServiceContext
    { 
        
      public IQueryable<Contact> ContactData
        {
            get
                {
                   return this.CreateQuery<Contact>("Contacts"); 

                }
         }

        public ContactContext (Uri baseAddress, StorageCredentials credentials): base(baseAddress.AbsoluteUri, credentials) {}

        public void Add(Contact cntct) 
        {
  
            this.AddObject("Contacts", cntct);
  
            this.SaveChanges();
  
         }


    }
Листинг 17.1.
< Самостоятельная работа 4 || Самостоятельная работа 5: 1234567 || Лекция 13 >
Роза Мальцева
Роза Мальцева
Игнат Гринько
Игнат Гринько

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

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