Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
はい、表題のやり方を説明します。
.NET Micro Frameworkには、WPFやSilverlightアプリケーション向けの様なWCFサービス参照追加機能はありません。けど大丈夫。RESTのAPIの場合、URIを指定してHTTPでアクセスして、ATOMならXML、JSONならJSON形式でリゾルブすれば、いいですよね。.それらは、通常のPCクライアントアプリでも、HttpWebRequestとHttpWebResponseとか使えば簡単にアクセスできちゃうわけです。で、.NET Micro Frameworkには、これらのクラスがちゃんと用意されているので、それを使えば簡単にREST形式のWeb Serviceにアクセスできちゃいます。
更に、今は、Azure使えばすぐREST Webサービス稼働できるし、FezMini+ネットワークボード買っちゃえばすぐ試せるので、ほんと皆さん試してみてね。
※ちなみに、SOAPの場合は、こちらも基本必要なライブラリ揃っているので、SOAPプロトコルの概要知ってればそれほど難しくない
さて、ではやり方を簡単に説明しておきましょう。
まず、.NET Micro Frameworkのアプリケーションプロジェクトを一つ作ります。
アッセンブリー参照を追加します。アッセンブリーは、c:\Program Files\Microsoft .NET Micro Framework\v4.1\Assembly\le に入っています。
- System.IO
- System.Http
- System.Xml
の3つのアッセンブリーです。
後は、以下のようなコードを書けば、出来上がり
|
レコードのインサートを行うような場合は、GetResponseする前に、reqのContentType(POSTをセット)に値をセットして、送信内容の文字列を作り、System.Text.UTF8Encoding.UTF8のGetBytesメソッドをコールしてバイトデータを作成し、そのバイトデータの長さをContentLengthに代入して、GetRequestStream()で送信用のストリームを取り出し、バイトデータを書き込んでCloseしてから、GetResponseをコールすれば、Okです。
サーバーをEntity Framework、WCF Data Serviceで作ってから、そのクライアントとして上記の方法を試せば、Httpレベルでどんなデータをやり取りしているかの勉強にもなりますよ。