SlideShare a Scribd company logo
1 of 53
Windows Phoneハンズオン セッションスライド
Windows Azure Mobile Services入門
Windows Azure Mobile Servicesとは?
Windows Azureのサービスです。
スマフォ・タブレットから簡単に
サーバーへのデータ保存、取得を実現します。
無料枠もあるよ
「20MBのデータベース+50万回/月のAPI呼び出し」
通知機能にも使えます(今回はやりません)。
Windows Azure Mobile Servicesとは?
ハンズオンの流れ
1.Windows Azureのお試しアカウントを作成する
2.Mobile Serviceの作成
3.サンプルのダウンロード
4.動かしてみる
5.変更してみる
ハンズオンの流れ
1.Windows Azureのお試しアカウントを作成する
2.Mobile Serviceの作成
3.サンプルのダウンロード
4.動かしてみる
5.変更してみる
1.Windows Azureのお試しアカウントを作成する
Windows Azureのサイトにアクセス
http://www.windowsazure.com/ja-jp/
1.Windows Azureのお試しアカウントを作成する
Windows Azureのサイトにアクセス
http://www.windowsazure.com/ja-jp/
1.Windows Azureのお試しアカウントを作成する
「今すぐ試す」をクリック
1.Windows Azureのお試しアカウントを作成する
Microsoftアカウントでサインイン
1.Windows Azureのお試しアカウントを作成する
項目を入力して進む
ハンズオンの流れ
1.Windows Azureのお試しアカウントを作成する
2.Mobile Serviceの作成
3.サンプルのダウンロード
4.動かしてみる
5.変更してみる
Mobile Serviceの作成
ポータルに移動する
Mobile Serviceの作成
トップページからポータルに行く場合はここから
Mobile Serviceの作成
左ナビからモバイルサービスをクリック
Mobile Serviceの作成
左ナビからモバイルサービスをクリック
Mobile Serviceの作成
新規に作成
画面下の方(何もモバイルサービスを作成していない場合
は上に新しく作るリンクがあります)
Mobile Serviceの作成
新規に作成
画面下の方(何もモバイルサービスを作成していない場合
は上に新しく作るリンクがあります)
Mobile Serviceの作成
作成
Mobile Serviceの作成
いろいろ入力
Mobile Serviceの作成
任意のURL
無料のデータベース
どこでもいいけど近所で
今回は.NETで
Mobile Serviceの作成
パスワードを設定
Mobile Serviceの作成
作成中・・・
Mobile Serviceの作成
作成中・・・
できた
Mobile Serviceの作成
この辺をクリック!!
ハンズオンの流れ
1.Windows Azureのお試しアカウントを作成する
2.Mobile Serviceの作成
3.サンプルのダウンロード
4.動かしてみる
5.変更してみる
Mobile Serviceの作成
上部メニューから色々遷移できるけど、このページにもど
るには「 」をクリックします。
Mobile Serviceの作成
Mobile Serviceの作成
C#のソリューションファイルがダウンロードできます。
ハンズオンの流れ
1.Windows Azureのお試しアカウントを作成する
2.Mobile Serviceの作成
3.サンプルのダウンロード
4.動かしてみる
5.変更してみる
動かしてみる
ダウンロードしたzipファイルのトップディレクトリ
「{サービス名}.sln」をVisualStudioで開きます。
動かしてみる
Windowsストアアプリと
サーバーサイドのスクリプトが同梱されています。
←ストアアプリ
↑サーバー側
動かしてみる
サーバーサイドのコードがある=ローカルで開発できる
JavaScript版のMobile Servicesはこれができなかった。
(その代わり管理ページからDBのカラムなどを変更できた)
ちょっとJavaScriptのプロジェクトも見てみましょう。
動かしてみる
開発の流れ
ロカールのIIS上で動作させて開発
↓
Windows Azureにデプロイ
+ストアアプリ側の接続先をAzureに変更
動かしてみる
まずはサーバーを起動
{プロジェクト名}Serviceを実行する
動かしてみる
ブラウザが起動してこういう画面が表示されればOK
(try it outから色々APIを操作できるので暇があったら試して
みよう)
動かしてみる
ストアアプリ側を実行
First itemとSecond itemが表示されればOK
動かしてみる
DBの中身を確認
サーバーエクスプローラーを表示する
Textカラムを変更してみる
ハンズオンの流れ
1.Windows Azureのお試しアカウントを作成する
2.Mobile Serviceの作成
3.サンプルのダウンロード
4.動かしてみる
5.変更してみる
変更してみる
Mobile Servicesは簡単にDBのデータを利用できるのが利点
なので、DB処理の流れを把握しておきましょう。
WebApiConfig.cs
ここで以下のようにデータを登録しています。
List<TodoItem> todoItems = new List<TodoItem>
{
new TodoItem { Id = "1", Text = "First item", Complete = false },
new TodoItem { Id = "2", Text = "Second item", Complete = false },
};
変更してみる
なんとなくここを書き換えると初期値が変わるんじゃないかと
予想が付きます。
実際にその通りなのですが、一度作成されたテーブルはデ
フォルトでは変更できません。
sampleMobileServiceTest002Initializer :
DropCreateDatabaseIfModelChanges<sampleMobileServiceTest002Context>
初期化のためのInitializerが
「モデルが変更された場合に新しくテーブルを作り直す」
設定だからです。
変更してみる
これを毎回テーブルを作り直すように変更してみます。
「DropCreateDatabaseAlways」
public class sampleMobileServiceTest002Initializer :
DropCreateDatabaseAlways<sampleMobileServiceTest002Context>
ここを書き換えてみる
List<TodoItem> todoItems = new List<TodoItem>
{
new TodoItem { Id = “1”, Text = “変更1", Complete = false },
new TodoItem { Id = “2”, Text = “変更2", Complete = false },
};
変更してみる
これを毎回テーブルを作り直すように変更してみます。
「DropCreateDatabaseAlways」
public class sampleMobileServiceTest002Initializer :
DropCreateDatabaseAlways<sampleMobileServiceTest002Context>
ここを書き換えてみる
List<TodoItem> todoItems = new List<TodoItem>
{
new TodoItem { Id = “1”, Text = “変更1", Complete = false },
new TodoItem { Id = “2”, Text = “変更2", Complete = false },
};
テーブルのカラムを変更してみる
・Service(サーバー)側の
DataObjectsTodoItem.csを開く
public class TodoItem : EntityData
{
public string Text { get; set; }
public bool Complete { get; set; }
public string Name { get; set; }
}
テーブルのカラムを変更してみる
・Service(サーバー)側の
App_StartWebApiConfig.csを開く
List<TodoItem> todoItems = new List<TodoItem>
{
new TodoItem { Id = “1”, Text = “変更1”, Complete = false, Name = “名前1” },
new TodoItem { Id = “2”, Text = “変更2”, Complete = false, Name = “名前2" }
};
テーブルのカラムを変更してみる
・ストアアプリ側の
MainPage.xaml.csを開く
public class TodoItem
{
public string Id { get; set; }
[JsonProperty(PropertyName = "text")]
public string Text { get; set; }
[JsonProperty(PropertyName = "complete")]
public bool Complete { get; set; }
[JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
テーブルのカラムを変更してみる
・ストアアプリ側の
MainPage.xamlを開く
<DataTemplate>
<StackPanel Orientation="Horizontal">
<CheckBox Name=“CheckBoxComplete” ・・・/>
<TextBlock Text="{Binding Name}" />
</StackPanel>
</DataTemplate>
テーブルのカラムを変更してみる
テーブルのデータを削除する
・ストアアプリ側の
MainPage.xamlを開く
<Button Content="Delete" HorizontalAlignment="Stretch"
VerticalAlignment="Stretch" Click="Button_Click"/>
テーブルのカラムを変更してみる
・ストアアプリ側の
MainPage.xaml.csを開く
private async void Button_Click(object sender, RoutedEventArgs e)
{
foreach (var item in this.items)
{
await todoTable.DeleteAsync(item);
}
RefreshTodoItems();
}
まとめ
簡単にMobile Servicesの動きを見てみました。
サーバー連携を簡単に作成したい場合には有力な選択肢
だと思います。
仕組み的にはASP.NETらしいので作りこんで行くことも可
能?(この辺まだ知識不足)
まとめ
今後ハンズオンでやってみたいこと、
・複数のテーブルを利用する
・データ保存時や更新時にサーバー側で
バリデーションやロジックを組み込む方法
今後のイベント
[4/17(木)] 「ひろ~しまでもAZUREやるのです。
JapanDC万歳!!(仮)」
[04/19(土)] ヒーロー島 NUI スペシャル
[調整中] Windows Phoneハンズオン Vol29(Azureネタ)
[5月] Windows Phoneハンズオン Vol.30(TypeScript)
ご清聴ありがとうございました

More Related Content

Similar to Windows azuremobileservice入門

Hokuriku.NET ASP.NET MVC入門 「実践」 20120825
Hokuriku.NET ASP.NET MVC入門 「実践」 20120825 Hokuriku.NET ASP.NET MVC入門 「実践」 20120825
Hokuriku.NET ASP.NET MVC入門 「実践」 20120825 miso- soup3
 
Spring bootでweb 基本編
Spring bootでweb 基本編Spring bootでweb 基本編
Spring bootでweb 基本編なべ
 
Team Foundation Server プロセステンプレートの変更 手順書
Team Foundation Server プロセステンプレートの変更 手順書Team Foundation Server プロセステンプレートの変更 手順書
Team Foundation Server プロセステンプレートの変更 手順書Masaki Takeda
 
構築手順 Ssis イベントログ取込み 第2版
構築手順 Ssis イベントログ取込み 第2版構築手順 Ssis イベントログ取込み 第2版
構築手順 Ssis イベントログ取込み 第2版junichi anno
 
Web リソースを活用した簡単アプリケーション開発(Windows Phone)
Web リソースを活用した簡単アプリケーション開発(Windows Phone)Web リソースを活用した簡単アプリケーション開発(Windows Phone)
Web リソースを活用した簡単アプリケーション開発(Windows Phone)Akira Onishi
 
Apexコアデベロッパーセミナー070726 配布用
Apexコアデベロッパーセミナー070726 配布用Apexコアデベロッパーセミナー070726 配布用
Apexコアデベロッパーセミナー070726 配布用stomita
 
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips   Prism 4.5 & Kona project 等のご紹介XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips   Prism 4.5 & Kona project 等のご紹介
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介Shotaro Suzuki
 
初めての Data API CMS どうでしょう - 仙台編 -
初めての Data API   CMS どうでしょう - 仙台編 -初めての Data API   CMS どうでしょう - 仙台編 -
初めての Data API CMS どうでしょう - 仙台編 -Yuji Takayama
 
Tech talk salesforce mobile sdk
Tech talk   salesforce mobile sdkTech talk   salesforce mobile sdk
Tech talk salesforce mobile sdkKazuki Nakajima
 
PowerShellを使用したWindows Serverの管理
PowerShellを使用したWindows Serverの管理PowerShellを使用したWindows Serverの管理
PowerShellを使用したWindows Serverの管理junichi anno
 
ここが変わる!Unity 5のスマホ開発  ~アセットバンドル、ビルド、プラグイン~
ここが変わる!Unity 5のスマホ開発  ~アセットバンドル、ビルド、プラグイン~ここが変わる!Unity 5のスマホ開発  ~アセットバンドル、ビルド、プラグイン~
ここが変わる!Unity 5のスマホ開発  ~アセットバンドル、ビルド、プラグイン~MakotoItoh
 
Entity Framework 6.1.3 + Windows フォーム サンプル アプリケーション構築 手順書
Entity Framework 6.1.3 + Windows フォームサンプル アプリケーション構築手順書Entity Framework 6.1.3 + Windows フォームサンプル アプリケーション構築手順書
Entity Framework 6.1.3 + Windows フォーム サンプル アプリケーション構築 手順書Masaki Takeda
 
Windows azure mobile services による mobile + cloud アプリケーション超高速開発
Windows azure mobile services による mobile + cloud アプリケーション超高速開発Windows azure mobile services による mobile + cloud アプリケーション超高速開発
Windows azure mobile services による mobile + cloud アプリケーション超高速開発Shotaro Suzuki
 
Team Foundation Server / Visual Studio Team Services によるプロジェクト管理・リポジトリ管理・継続的イ...
Team Foundation Server / Visual Studio Team Services によるプロジェクト管理・リポジトリ管理・継続的イ...Team Foundation Server / Visual Studio Team Services によるプロジェクト管理・リポジトリ管理・継続的イ...
Team Foundation Server / Visual Studio Team Services によるプロジェクト管理・リポジトリ管理・継続的イ...Masaki Takeda
 
Team Foundation Server / Visual Studio Team Services 手順書
Team Foundation Server /Visual Studio Team Services 手順書Team Foundation Server /Visual Studio Team Services 手順書
Team Foundation Server / Visual Studio Team Services 手順書Masaki Takeda
 

Similar to Windows azuremobileservice入門 (20)

Clrh 110716 wcfwf
Clrh 110716 wcfwfClrh 110716 wcfwf
Clrh 110716 wcfwf
 
Hokuriku.NET ASP.NET MVC入門 「実践」 20120825
Hokuriku.NET ASP.NET MVC入門 「実践」 20120825 Hokuriku.NET ASP.NET MVC入門 「実践」 20120825
Hokuriku.NET ASP.NET MVC入門 「実践」 20120825
 
Spring bootでweb 基本編
Spring bootでweb 基本編Spring bootでweb 基本編
Spring bootでweb 基本編
 
Team Foundation Server プロセステンプレートの変更 手順書
Team Foundation Server プロセステンプレートの変更 手順書Team Foundation Server プロセステンプレートの変更 手順書
Team Foundation Server プロセステンプレートの変更 手順書
 
構築手順 Ssis イベントログ取込み 第2版
構築手順 Ssis イベントログ取込み 第2版構築手順 Ssis イベントログ取込み 第2版
構築手順 Ssis イベントログ取込み 第2版
 
20081003
2008100320081003
20081003
 
20120425
2012042520120425
20120425
 
Web リソースを活用した簡単アプリケーション開発(Windows Phone)
Web リソースを活用した簡単アプリケーション開発(Windows Phone)Web リソースを活用した簡単アプリケーション開発(Windows Phone)
Web リソースを活用した簡単アプリケーション開発(Windows Phone)
 
Web Intents入門
Web Intents入門Web Intents入門
Web Intents入門
 
Apexコアデベロッパーセミナー070726 配布用
Apexコアデベロッパーセミナー070726 配布用Apexコアデベロッパーセミナー070726 配布用
Apexコアデベロッパーセミナー070726 配布用
 
20080524
2008052420080524
20080524
 
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips   Prism 4.5 & Kona project 等のご紹介XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips   Prism 4.5 & Kona project 等のご紹介
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
 
初めての Data API CMS どうでしょう - 仙台編 -
初めての Data API   CMS どうでしょう - 仙台編 -初めての Data API   CMS どうでしょう - 仙台編 -
初めての Data API CMS どうでしょう - 仙台編 -
 
Tech talk salesforce mobile sdk
Tech talk   salesforce mobile sdkTech talk   salesforce mobile sdk
Tech talk salesforce mobile sdk
 
PowerShellを使用したWindows Serverの管理
PowerShellを使用したWindows Serverの管理PowerShellを使用したWindows Serverの管理
PowerShellを使用したWindows Serverの管理
 
ここが変わる!Unity 5のスマホ開発  ~アセットバンドル、ビルド、プラグイン~
ここが変わる!Unity 5のスマホ開発  ~アセットバンドル、ビルド、プラグイン~ここが変わる!Unity 5のスマホ開発  ~アセットバンドル、ビルド、プラグイン~
ここが変わる!Unity 5のスマホ開発  ~アセットバンドル、ビルド、プラグイン~
 
Entity Framework 6.1.3 + Windows フォーム サンプル アプリケーション構築 手順書
Entity Framework 6.1.3 + Windows フォームサンプル アプリケーション構築手順書Entity Framework 6.1.3 + Windows フォームサンプル アプリケーション構築手順書
Entity Framework 6.1.3 + Windows フォーム サンプル アプリケーション構築 手順書
 
Windows azure mobile services による mobile + cloud アプリケーション超高速開発
Windows azure mobile services による mobile + cloud アプリケーション超高速開発Windows azure mobile services による mobile + cloud アプリケーション超高速開発
Windows azure mobile services による mobile + cloud アプリケーション超高速開発
 
Team Foundation Server / Visual Studio Team Services によるプロジェクト管理・リポジトリ管理・継続的イ...
Team Foundation Server / Visual Studio Team Services によるプロジェクト管理・リポジトリ管理・継続的イ...Team Foundation Server / Visual Studio Team Services によるプロジェクト管理・リポジトリ管理・継続的イ...
Team Foundation Server / Visual Studio Team Services によるプロジェクト管理・リポジトリ管理・継続的イ...
 
Team Foundation Server / Visual Studio Team Services 手順書
Team Foundation Server /Visual Studio Team Services 手順書Team Foundation Server /Visual Studio Team Services 手順書
Team Foundation Server / Visual Studio Team Services 手順書
 

More from Makoto Nishimura

リモートで技術を伝える方法(発表版)
リモートで技術を伝える方法(発表版)リモートで技術を伝える方法(発表版)
リモートで技術を伝える方法(発表版)Makoto Nishimura
 
リモートで技術を伝える方法(フル)
リモートで技術を伝える方法(フル)リモートで技術を伝える方法(フル)
リモートで技術を伝える方法(フル)Makoto Nishimura
 
Minecraftでプログラミングを学べるって本当?
Minecraftでプログラミングを学べるって本当?Minecraftでプログラミングを学べるって本当?
Minecraftでプログラミングを学べるって本当?Makoto Nishimura
 
Power Automateを使ってみた
Power Automateを使ってみたPower Automateを使ってみた
Power Automateを使ってみたMakoto Nishimura
 
Power Automate Desktop入門
Power Automate Desktop入門Power Automate Desktop入門
Power Automate Desktop入門Makoto Nishimura
 
WinUI 3.0 Preview 1を触ってみた(.NETラボ2020年6月登壇資料)
WinUI 3.0 Preview 1を触ってみた(.NETラボ2020年6月登壇資料)WinUI 3.0 Preview 1を触ってみた(.NETラボ2020年6月登壇資料)
WinUI 3.0 Preview 1を触ってみた(.NETラボ2020年6月登壇資料)Makoto Nishimura
 
AzureDevOpsの機能解説
AzureDevOpsの機能解説AzureDevOpsの機能解説
AzureDevOpsの機能解説Makoto Nishimura
 
OSS開発で.NETを活用してDevOps
OSS開発で.NETを活用してDevOpsOSS開発で.NETを活用してDevOps
OSS開発で.NETを活用してDevOpsMakoto Nishimura
 
Amazon echoがやってきた
Amazon echoがやってきたAmazon echoがやってきた
Amazon echoがやってきたMakoto Nishimura
 
2017年度注目の.netテクノロジー
2017年度注目の.netテクノロジー2017年度注目の.netテクノロジー
2017年度注目の.netテクノロジーMakoto Nishimura
 
Azure上でec cubeを運用するポイント
Azure上でec cubeを運用するポイントAzure上でec cubeを運用するポイント
Azure上でec cubeを運用するポイントMakoto Nishimura
 
2016年11月.NETラボLT:超余談ゲームプラットフォームの話
2016年11月.NETラボLT:超余談ゲームプラットフォームの話2016年11月.NETラボLT:超余談ゲームプラットフォームの話
2016年11月.NETラボLT:超余談ゲームプラットフォームの話Makoto Nishimura
 
Xamarin入門(技術というより心構え編)
Xamarin入門(技術というより心構え編)Xamarin入門(技術というより心構え編)
Xamarin入門(技術というより心構え編)Makoto Nishimura
 
独自Ecサイト立ち上げワンストップセミナー 0907
独自Ecサイト立ち上げワンストップセミナー 0907独自Ecサイト立ち上げワンストップセミナー 0907
独自Ecサイト立ち上げワンストップセミナー 0907Makoto Nishimura
 
Uwpでみるxaml入門第二回
Uwpでみるxaml入門第二回Uwpでみるxaml入門第二回
Uwpでみるxaml入門第二回Makoto Nishimura
 

More from Makoto Nishimura (20)

リモートで技術を伝える方法(発表版)
リモートで技術を伝える方法(発表版)リモートで技術を伝える方法(発表版)
リモートで技術を伝える方法(発表版)
 
リモートで技術を伝える方法(フル)
リモートで技術を伝える方法(フル)リモートで技術を伝える方法(フル)
リモートで技術を伝える方法(フル)
 
windows terminal入門
windows terminal入門windows terminal入門
windows terminal入門
 
Minecraftでプログラミングを学べるって本当?
Minecraftでプログラミングを学べるって本当?Minecraftでプログラミングを学べるって本当?
Minecraftでプログラミングを学べるって本当?
 
Power Automateを使ってみた
Power Automateを使ってみたPower Automateを使ってみた
Power Automateを使ってみた
 
Power Automate Desktop入門
Power Automate Desktop入門Power Automate Desktop入門
Power Automate Desktop入門
 
Microsoft Teams Custom
Microsoft Teams CustomMicrosoft Teams Custom
Microsoft Teams Custom
 
WinUI 3.0 Preview 1を触ってみた(.NETラボ2020年6月登壇資料)
WinUI 3.0 Preview 1を触ってみた(.NETラボ2020年6月登壇資料)WinUI 3.0 Preview 1を触ってみた(.NETラボ2020年6月登壇資料)
WinUI 3.0 Preview 1を触ってみた(.NETラボ2020年6月登壇資料)
 
AzureDevOpsの機能解説
AzureDevOpsの機能解説AzureDevOpsの機能解説
AzureDevOpsの機能解説
 
EC-CUBE 4 入門
EC-CUBE 4 入門EC-CUBE 4 入門
EC-CUBE 4 入門
 
OSS開発で.NETを活用してDevOps
OSS開発で.NETを活用してDevOpsOSS開発で.NETを活用してDevOps
OSS開発で.NETを活用してDevOps
 
.NETの最近
.NETの最近.NETの最近
.NETの最近
 
Amazon echoがやってきた
Amazon echoがやってきたAmazon echoがやってきた
Amazon echoがやってきた
 
2017年度注目の.netテクノロジー
2017年度注目の.netテクノロジー2017年度注目の.netテクノロジー
2017年度注目の.netテクノロジー
 
Azure上でec cubeを運用するポイント
Azure上でec cubeを運用するポイントAzure上でec cubeを運用するポイント
Azure上でec cubeを運用するポイント
 
2016年11月.NETラボLT:超余談ゲームプラットフォームの話
2016年11月.NETラボLT:超余談ゲームプラットフォームの話2016年11月.NETラボLT:超余談ゲームプラットフォームの話
2016年11月.NETラボLT:超余談ゲームプラットフォームの話
 
Xamarin入門(技術というより心構え編)
Xamarin入門(技術というより心構え編)Xamarin入門(技術というより心構え編)
Xamarin入門(技術というより心構え編)
 
独自Ecサイト立ち上げワンストップセミナー 0907
独自Ecサイト立ち上げワンストップセミナー 0907独自Ecサイト立ち上げワンストップセミナー 0907
独自Ecサイト立ち上げワンストップセミナー 0907
 
Uwpでみるxaml入門第二回
Uwpでみるxaml入門第二回Uwpでみるxaml入門第二回
Uwpでみるxaml入門第二回
 
Uwpでみるxaml入門
Uwpでみるxaml入門Uwpでみるxaml入門
Uwpでみるxaml入門
 

Windows azuremobileservice入門