はつねの日記

Kinect, Windows 10 UWP, Windows Azure, IoT, 電子工作

Windows Azure Mobile ServicesでWindowsストアアプリをクラウドフロント化

新しいMobile Serviceの作成 (23:20)

image

Windows Azure Management Portalで[モバイルサービス]をクリックしてから[+新規]ボタンをクリックします。

 

image

[作成]アイコンをクリックします。

 

[モバイルサービスの作成]ダイアログが表示されたらMobile Serviceのためのサブドメイン名をURL欄に入力します。

image

データベースは新規でも既存でもかまいません。DBとMobile Serviceはおなじ場所を指定しましょう。別の場所だったときは「同じ場所を指定」することを勧めるメッセージが表示されます。今回は「West US」にしてみました。

入力が終わったら[→]ボタンをクリックします。

 

[データベースの設定]ダイアログが表示されるので、データベース、ログインユーザー名、パスワードを設定して[?]ボタンをクリックします。

image

 

これでMobile ServiceがWindows Azure上に作成できました。

image

 

Mobile Serviceの名前(ClaudiaEnquate)をクリックすれば、Mobile Service管理画面が開きます。

image

Windowsストアアプリから接続する(23:41)

Visual Studioがインストールしてあるマシンで、あらかじめSDK(https://go.microsoft.com/fwLink/?LinkID=257545&clcid=0x411)をダウンロードしてインストールしておきます。

 

image

Mobile Service管理画面の[キーの取得]アイコンをクリックします。

 

アプリケーションキークリップボードにコピーしておきます。

image

 

Visual Studioを起動し[ファイル]-[新しいプロジェクト]-[Windowsストア]-[新しいアプリケーション]を選択して[OK]ボタンをクリックします。

image

 

ソリューションエクスプローラーでプロジェクト名を右クリックして[参照の追加]メニューをクリックし、参照マネージャーで[Windows]-[拡張]の一覧から「Windows Azure Mobile Services Managed Client」をチェックして[OK]ボタンをクリックします。

image

 

Mobile Service接続用コードを記述する

Imports System.Runtime.Serialization
Imports Microsoft.WindowsAzure.MobileServices

Public Class StorageContext
    Public Property Id As Integer

    <DataMember(Name:="text")>
    Public Property Text As String

    <DataMember(Name:="complete")>
    Public Property Complete As Boolean
End Class

Public Class StorageModel
    Private Shared MobileService As New MobileServiceClient(
            "https://claudiaenquete.azure-mobile.net/",
            "fAeluZULxJAFnNZjQNVIJvbRlabvKL56"
        )
    Private AnswerTable As IMobileServiceTable(Of StorageContext) =
        MobileService.GetTable(Of StorageContext)()

    Private _Items As MobileServiceCollectionView(Of StorageContext)
    Public Property Items As MobileServiceCollectionView(Of StorageContext)
        Get
            Return Me._Items
        End Get
        Private Set(value As MobileServiceCollectionView(Of StorageContext))
            If Me._Items IsNot value Then
                Me._Items = value
            End If
        End Set
    End Property

    Public Async Sub InsertAnswerItem(item As StorageContext)
        Await AnswerTable.InsertAsync(item)
    End Sub

    Public Async Sub UpdateAnswerItem(item As StorageContext)
        Await AnswerTable.UpdateAsync(item)
    End Sub

    Public Async Sub DeleteAnswerItem(item As StorageContext)
        Await AnswerTable.DeleteAsync(item)
    End Sub

    Public Sub GetAnswerItem()
        Me.Items = (From item In Me.AnswerTable
                    Where Not item.Complete).ToCollectionView
    End Sub
End Class
(0:39)完了:調べものしながらblog下記ながらの時間
【注意】
Azure SQL DatabaseにStorageContext相当のテーブルを用意しておく必要があります。