テスターですが何か?

ホビープログラマ略してHPです

【日本語訳】Exploring Windows Azure Storage part16

leave a comment »

このエントリーはMSDNのチュートリアル「Exploring Windows Azure Storage」の「Task2 – Sending Messages to the Queue」の日本語訳になります。このコンテンツ、日本語訳全体については、こちらのエントリーを参照してください。

 

Task2 – Sending Messages to the Queue

このエントリーでは、RdStorage_WebRole Webアプリケーションにキューへメッセージを送信する機能を追加します。

1.RdStorage_WebRole Webアプリケーションの Default.aspx を開き、既存のContentコントロール(BodyContent)に存在するコードを削除します。

2.ページに asp:TextBox コントロールを追加し、コントロールのIDを「txtMessage」に変更します。この時点でページの体裁を整えたくなるでしょうが、その必要はありません。そして、asp:Button コントロールを先ほど追加したテキストボックスのすぐ後ろに追加し、IDを「btnSend」に、Textを「Send Message」に変更します。コードは以下のようになっているはずです。

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <asp:TextBox ID="txtMessage" runat="server"></asp:TextBox>
    <asp:Button ID="btnSend" runat="server" Text="Send message" />
</asp:Content>

3.Default.aspx を右クリック-[コードの表示]を選択し、コードビハインドファイル(Default.aspx.cs / Default.aspx.vb)を開きます。

4.ファイルの先頭に以下の名前空間宣言を追加します。

(コードスニペット – ExploringWindowsAzureStorage-Ex03-01-Namespace-CS)

using Microsoft.WindowsAzure;
using Microsoft.WindowsAzure.StorageClient;
using Microsoft.WindowsAzure.ServiceRuntime;

(コードスニペット – ExploringWindowsAzureStorage-Ex03-01-Namespace-CS)

Imports Microsoft.WindowsAzure
Imports Microsoft.WindowsAzure.StorageClient
Imports Microsoft.WindowsAzure.ServiceRuntime

5.Default.aspx を右クリックし[デザイナーの表示]を選択後、「Send message」ボタンをダブルクリックします。または、ASP.NETのマークアップを直接編集して必要なイベントハンドラーを追加することもできます。以下のアカウント情報を初期化する btnSend_Click イベントを追加します。

(コードスニペット – ExploringWindowsAzureStorage-Ex03-02-WebRoleCreateAccount-CS)

        protected void btnSend_Click(object sender, EventArgs e)
        {
            // アカウント情報の初期化
            var storageAccount = CloudStorageAccount.FromConfigurationSetting("DataConnectionString");
        }

(コードスニペット – ExploringWindowsAzureStorage-Ex03-02-WebRoleCreateAccount-VB)

    Protected Sub btnSend_Click(sender As Object, e As EventArgs) Handles btnSend.Click
        ' アカウント情報の初期化
        Dim account = CloudStorageAccount.FromConfigurationSetting("DataConnectionString")
    End Sub

6.次に、QueueStorageヘルパーオブジェクトのインスタンスを取得し、存在しなければメッセージを作成する以下のコードを、前の手順で追加したコードのすぐ後ろに追加します。

(コードスニペット – ExploringWindowsAzureStorage-Ex03-03-WebRoleCreateQueue-CS)

        protected void btnSend_Click(object sender, EventArgs e)
        {
            // アカウント情報の初期化
            var storageAccount = CloudStorageAccount.FromConfigurationSetting("DataConnectionString");

            // メッセージキューへの参照を取得
            var queueClient = storageAccount.CreateCloudQueueClient();
            var queue = queueClient.GetQueueReference("messagequeue");
            queue.CreateIfNotExist();
        }

(コードスニペット – ExploringWindowsAzureStorage-Ex03-03-WebRoleCreateQueue-VB)

    Protected Sub btnSend_Click(sender As Object, e As EventArgs) Handles btnSend.Click

        ' アカウント情報の初期化
        Dim account = CloudStorageAccount.FromConfigurationSetting("DataConnectionString")

        ' メッセージキューへの参照を取得
        Dim queueClient = account.CreateCloudQueueClient
        Dim queue As CloudQueue = queueClient.GetQueueReference("messagequeue")
        queue.CreateIfNotExist()

    End Sub

7.ユーザーが入力したメッセージをキューにセットする以下のコードを前の手順で作成したコードのすぐ後ろに追加します。

(コードスニペット – ExploringWindowsAzureStorage-Ex03-04-WebRoleAddMessage-CS)

        protected void btnSend_Click(object sender, EventArgs e)
        {
            // アカウント情報の初期化
            var storageAccount = CloudStorageAccount.FromConfigurationSetting("DataConnectionString");

            // メッセージキューへの参照を取得
            var queueClient = storageAccount.CreateCloudQueueClient();
            var queue = queueClient.GetQueueReference("messagequeue");
            queue.CreateIfNotExist();

            // キューにメッセージを追加する
            var msg = new CloudQueueMessage(txtMessage.Text);
            queue.AddMessage(msg);
            txtMessage.Text = string.Empty;
        }

(コードスニペット – ExploringWindowsAzureStorage-Ex03-04-WebRoleAddMessage-VB)

    Protected Sub btnSend_Click(sender As Object, e As EventArgs) Handles btnSend.Click

        ' アカウント情報の初期化
        Dim account = CloudStorageAccount.FromConfigurationSetting("DataConnectionString")

        ' メッセージキューへの参照を取得
        Dim queueClient = account.CreateCloudQueueClient
        Dim queue As CloudQueue = queueClient.GetQueueReference("messagequeue")
        queue.CreateIfNotExist()

        ' キューにメッセージを追加する
        Dim msg As New CloudQueueMessage(Me.txtMessage.Text)
        queue.AddMessage(msg)
        Me.txtMessage.Text = String.Empty

    End Sub

8.RdStorage_WebRole プロジェクトの WebRole.cs / WebRole.vb ファイルを開きます。

9.コードファイルの先頭に名前空間宣言を追加します。

(コードスニペット – ExploringWindowsAzureStorage-Ex03-05-Namespace-CS)

using Microsoft.WindowsAzure.StorageClient;

(コードスニペット – ExploringWindowsAzureStorage-Ex03-05-Namespace-VB)

Imports Microsoft.WindowsAzure.StorageClient

 

次は「Task3 – Retrieving Message from the Queue」です。

Written by david9142

2011年12月20日 @ 1:02 AM

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。