Опубликован: 30.05.2011 | Доступ: свободный | Студентов: 2438 / 258 | Оценка: 4.12 / 4.41 | Длительность: 12:00:00
Специальности: Программист, Архитектор программного обеспечения
Самостоятельная работа 7:
Работа с Windows AzureQueue
Аннотация: В рамках данной практики мы рассмотрим два небольших примера, демонстрирующих основы работы с очередями Windows Azure , на примере рабочей и веб - ролей.
Создайте проект облачной службы и добавьте веб - роль и рабочую роль в решение.
В свойствах ролей определим строку подключения к эмулятору хранилища Azure .
Задание 1
Отправка сообщения в очередь
Создадим веб - форму AzureQueueSample со элементами управления - текстовое поле и кнопка:
asp - код веб формы:
<%@ Page Language="C#" AutoEventWireup="true"
CodeBehind="AzureQueueSample.aspx.cs" Inherits="WebRole1.AzureQueueSample" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<style type="text/css">
.style1
{
width: 197px;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Font-Bold="True" Font-Size="X-Large"
Text="Windows Azure Queue Example"></asp:Label>
<br />
<br />
<table style="width:100%;">
<tr>
<td class="style1">
<asp:TextBox ID="tb_message" runat="server"></asp:TextBox>
</td>
<td>
<asp:Button ID="btn_send" runat="server" onclick="btn_send_Click"
Text="Отправить" />
</td>
</tr>
</table>
<br />
</div>
</form>
</body>
</html>Добавим следующие ссылки в AzureQueueSample.aspx.cs :
using Microsoft.WindowsAzure; using Microsoft.WindowsAzure.StorageClient; using Microsoft.WindowsAzure.ServiceRuntime;
Создадим метод, обрабатывающие событие нажатия на кнопку btn_send :
protected void btn_send_Click(object sender, EventArgs e)
{
//определяем параметры учетной записи и клиента для создания очереди и сообщения
var storageAccount = CloudStorageAccount.FromConfigurationSetting("DataConnectionString");
var queueClient = storageAccount.CreateCloudQueueClient();
var queue = queueClient.GetQueueReference("messagequeue");
//создаем очередь
queue.CreateIfNotExist();
//создаем сообщение, источник - текстовое поле tb_message
var msg = new CloudQueueMessage(tb_message.Text);
//добавляем сообщение в очередь
queue.AddMessage(msg);
tb_message.Text = string.Empty;
}На этом работа с формой закончена.

