休日情報 Web サービス - C# のプログラムからの使い方
ステップ 0. 準備
まずはテスト用にコンソールアプリケーションのプロジェクトを新規作成します。
Windows フォームアプリケーションでも同様ですが、サンプルソースコードが簡単になるのでコンソールアプリケーションで話を進めます。
既存のプロジェクトに追加したい場合は次のステップに進んでください。
メニューから「ファイル」-「新規作成」-「プロジェクト」と選択します。
「新しいプロジェクト」というダイアログが出てきますので、「テンプレート」から「コンソール アプリケーション」を選択し、適当な名前をつけて OK ボタンを押してください。
ここではサンプルプログラムに合わせて PublicHolidaySample_Console で話を進めます。
ステップ 1. Web 参照の追加
プロジェクトが作成されたら、ソリューションエクスプローラを開き、PublicHolidaySample_Console プロジェクトの上で右クリックします。
コンテキストメニューから「Web 参照の追加」を選択します。
すると、「Web 参照の追加」ダイアログが出てきますので、「URL」のところに http://bearmini.net/publicholidays/JP.asmx と入力し、「移動」ボタンを押します。
「この URL で見つかった Web サービス」という欄に「1 個のサービスが見つかりました」と出てきたら成功です。
「参照の追加」ボタンを押してください。
ソリューションエクスプローラを見ると、プロジェクトの中に「Web References」フォルダができてそのなかに「net.bearmini」という項目ができていたらここまでは成功です。
ステップ 2. Web サービスを呼んでみる
Web 参照で net.bearmini 名前空間を追加できたら、Program.cs ファイルを開きます。
Main() 関数内に以下のようにコードを追加しましょう。
static void Main(string[] args)
{
net.bearmini.bearmininetpublicholidaysJP ws = new net.bearmini.bearmininetpublicholidaysJP();
Console.WriteLine(ws.IsPublicHoliday(2006, 1, 1));
}
net.bearmini.bearmininetpublicholidaysJP というのが Web サービスを呼び出すためのプロキシクラスの名前で、Visual Studio が自動生成してくれたものです。
変な名前なのでリファクタリング機能で変えてしまっても良いでしょう。
次の行で Web サービスの IsPublicHoliday() 関数を呼んでいます。
2006 年 1 月 1 日は元日なので、実行すると画面には True と表示されるはずです。
ファイアウォールやウイルス検出プログラムなどがネットワークアクセスをブロックしていると動作しませんので、うまくいかない場合はネットワーク関連の設定を見直してください。
(通常は Web サイトが見られる環境なら大丈夫なはずです)
他の関数 GetPublicHolidayNames() や GetPublicHolidaysByMonth()、GetPublicHolidaysByYear() も同様に呼び出すことができます。
このページに寄せられたトラックバック
このページはまだトラックバックを受信していません。
このページへのトラックバック Ping URL:
http://bearmini.net/trackback.aspx?~/publicholidays/usefromcsharp.aspx