方法 : マネージ コードを使用して Web サービスにアクセスする
更新 : 2007 年 11 月
マネージ コードからの Web サービスへのアクセスは、単純明快なプロセスです。まず、アクセスする Web サービスに対してプロジェクトに Web 参照を追加します。Web 参照は、Web サービスで公開されている各メソッドに対してプロキシとして機能するメソッドを持つ、プロキシ クラスを作成します。次に、Web 参照の名前空間を追加します。最後に、プロキシ クラスのインスタンスを作成し、ほかのクラスのメソッドにアクセスするのと同じ方法で、プロキシ クラスのメソッドにアクセスします。詳細については、「マネージ コードを使用した Web サービスへのアクセスのコード モデル」を参照してください。
既定では、Web 参照を追加すると、Web サービスに非同期にアクセスするためのメソッドがプロキシ クラスに追加されます。詳細については、「方法 : マネージ コードを使用して Web サービスに非同期にアクセスする」を参照してください。
マネージ コードを使用して Web サービスにアクセスするには
Web サービスにアクセスするアプリケーションを作成します。アプリケーションは、他の Web サービスでもかまいません。
アプリケーションが対話する Web サービス用の Web 参照を追加します。詳細については、「Web 参照の追加と削除」を参照してください。
クライアント コードで、Web サービスにアクセスする場所にプロキシ オブジェクトのインスタンスを作成します。
他のコンポーネントの場合と同じように、Web サービスのメソッドにアクセスします。
次に示すコード例の場合、クライアント アプリケーション (Application1) は、アクセスする Web サービスに対して Web 参照 (Converter) を持ち、この Web 参照には、Web サービスを呼び出すためのメソッド (ConvertTemperature) を持つプロキシ クラス (Service1) が含まれています。太字になっている 2 行のコードは、Web サービスにアクセスするために必要なコードを示しています。
Imports System Module Module1 Sub Main() Dim cService As New Converter.Service1() Dim dFahrenheit As Double Dim dCelsius As Double Console.Write("Temperature in degrees Fahrenheit: ") dFahrenheit = Convert.ToDouble(Console.ReadLine()) dCelsius = cService.ConvertTemperature(dFahrenheit) Console.Write("Temperature in degrees Celsius: ") Console.WriteLine(dCelsius.ToString()) End Sub End Module
using System; namespace Application1 { class Class1 { static void Main() { Converter.Service1 cService = new Converter.Service1(); Console.WriteLine("Temperature in degrees Fahrenheit: "); double dFahrenheit = Convert.ToDouble(Console.ReadLine()); double dCelsius = cService.ConvertTemperature(dFahrenheit); Console.Write("Temperature in degrees Celsius: "); Console.WriteLine(dCelsius.ToString()); } } }