Skip to main content
評価してください: 

vol.2「XML Web サービスで簡易モニタを作ってみよう」

Windows Forms クライアントとして実装

公開日: 2004 年 9 月 6 日

河端 善博

XML Web サービスができましたので、あとは、クライアントを実装するだけです。

タイマをつかって定期的に MomMoniService を呼び出し、得られた状態情報をフォーム上のグリッドにわかりやすく表示していきます。まず、XML Web サービスから、プロキシ用のクラス「MomState.cs」を作成します。

これには、Visual Studio .NET 2003 に付属の wsdl.exe を利用して、次のようにコマンド ラインから実行します。(実際は一行で入力します。)

wsdl http://localhost/MomMoniService/MomState.asmx?wsdl /l:cs
/out:c:\MomState.cs /u:administrator /p:password

Visual Studio .NET 2003 では、プロジェクトから「Web 参照の追加」でプロキシ クラスを作成することもできますが、今回は、XML Web サービスの URL やユーザー名、パスワードの指定を随時変更できるようにしたかったので、より柔軟性の高い wsdl.exe を使ってプロキシ クラスを作成しました。

あとは、このプロキシ クラス MomState をつかって、サービスを呼び出していきます。

MomState state = new MomState();
state.Url = urlText.Text;
state.Credentials = new NetworkCredential(usernameText.Text,
passwordText.Text);
DataSet result = state.GetSummaryStateMainAndRoleRollup(null,
groupText.Text, null, null, null);

変数 result には、StateMain と、StateRoleRollup の 2 つの DataTable が含まれていますので、これを処理して、フォームに配置した DataGrid にバインドすれば完成です。

図 1 にあるように、XML Web サービスの URL、ユーザー名、パスワード、更新間隔 (分)、グループを指定することができるようにしています。

ページのトップへ


目次

著者

河端 善博河端 善博

有限会社 COZAX 代表取締役社長
PASSJ 理事
セキュリティ分科会ボードリーダ
INETA Japan リード
MVP for SQL Server