t100のプログラミング脱出作戦

自分のプログラミング脳をプログラムにして、いつかプログラミングから脱出してやるぞっ!とか夢見ながら、日々プログラム作っていく 百野 貴博 の日記です!今は、屋号『百蔵。』として、Silverlight・WPFを追跡中です! (2007/09/30)
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
【--/--/-- --:--】 | スポンサー広告 | トラックバック(-) | コメント(-) top↑
SilverLight2 beta2 でWebサービスを呼ぶ(WCF編)
前回のエントリー以降、調べてみたのですが、どうもSilverlight でWebサービスを呼ぶ場合、サーバー側はWCFを使うのが推奨される方法なのかもしれません。

#というか従来の asmx ウェブサービスを呼び出す方法を見つけられませんでした・・・orz


ということで、Silverlight2 beta2 で、Webサービスを呼び出すプロジェクトを作る手順をまとめてみます。
(前回のチュートリアルと、ほぼ同じ内容ですが、、、)

手順は以下です。
1.Silverlight アプリケーションを作成しまっす。
pic01.png


2.Web Application Project を選択しまっす。
こうすることで、Silverlightコントロールプロジェクトをビルドすると、Webサービス側にコピーされるようになるようです。
(Webプロジェクト側のプロパティの「Silverlight アプリケーション」というタブの設定が自動的に追加されるのかも?)

pic02.png


3.Webサービスを作成
Webプロジェクトを右クリックして、「追加」「新しい項目」を選びます。

pic03.png


追加するのは、Silverlight-enabled WCF Service。 
beta 1 の時は WCFサービス追加後にSilverlight用に幾つか設定が必要だったのですが、この項目を選ぶことでそれらの手間が不要になったようです。

pic04.png


4.サービスの中身を追加っ
Service1.svc をダブルクリックして、とりあえず簡単なメソッド追加します。
文字列引数を受け取って、Hello!! をつけて返します。

pic05.png


追加できたら、サービスの中身が出来たらとりあえずビルド。
ビルドしておかないと、後のWebサービス参照追加でエラーになる場合があります。

pic08.png


5.サービス参照の追加
SilverlightApplication側に、サービス参照の追加します。

pic06.png


探索ボタン押すと、自動的にソリューション内のサービスを検索してくれます。
うまくみつかったら、Service1を選択して「OK」をクリック!

pic07.png


サービス参照のファイルが増えた。
ServiceReferences.Client.Config というファイルも増えた。
すみません。何が設定できるのかまだ分かりません。。。

pic09.png


6.XAMLを編集。
とりあえず、テキストボックス、テキストブロック、ボタンを追加。
編集はXAMLを直接。ツールボックスからのドラッグ&ドロップも、まだXAMLへしか出来ないみたい。
でも、インテリセンスが良く出来ているので結構サクサク編集できる。

pic10.png


7.サービス呼び出しを実装
こちらも、インテリセンスでサクサク実装できます。
このあたり良いですね。

SilverlightはWebサービスを非同期にしか呼び出せないので、呼び出し完了の通知を受け取るイベントハンドラを登録してから、実際に呼び出すことになります。

pic11.png


イベント引数から受け取る戻り値も、ちゃんとタイプセーフになってる。さすが。

pic12.png


8.動いた!

テキストボックスに名前を入れてボタンを押したら、テキストが表示されました!
やったね!!

pic13.png














管理者にだけ表示を許可する


トラックバックURL:
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。