Asp.net-web-services
ASP.NET-Webサービス
Webサービスは、Webアプリケーションで使用されるWebのプロトコルを使用してアクセスされるWebベースの機能です。 Webサービス開発には3つの側面があります。
- Webサービスを作成する
- プロキシを作成する
- Webサービスを利用する
Webサービスを作成する
Webサービスは、基本的に他のアプリケーションで使用できるメソッドで構成されるクラスであるWebアプリケーションです。 また、ASP.NET Webページなどの分離コードアーキテクチャに従いますが、ユーザーインターフェイスはありません。
この概念を理解するために、株価情報を提供するWebサービスを作成しましょう。 クライアントは、銘柄記号に基づいて銘柄の名前と価格について照会できます。 この例を単純にするために、値は2次元配列にハードコーディングされています。 このWebサービスには3つのメソッドがあります。
- デフォルトのHelloWorldメソッド
- GetNameメソッド
- GetPriceメソッド
Webサービスを作成するには、次の手順を実行します。
ステップ(1):Visual Studioで[ファイル]→ [新規]→ [Webサイト]を選択し、ASP.NET Webサービスを選択します。
ステップ(2):Service.asmxというWebサービスファイルとそのコードビハインドファイルService.csがプロジェクトのApp_Codeディレクトリに作成されます。
ステップ(3):ファイルの名前をStockService.asmxおよびStockService.csに変更します。
ステップ(4):.asmxファイルには、単にWebServiceディレクティブがあります:
ステップ(5):StockService.csファイルを開きます。生成されるコードは基本的なHello Worldサービスです。 デフォルトのWebサービスコードビハインドファイルは次のようになります。
ステップ(6):コードビハインドファイルを変更して、銘柄記号、名前、価格、および銘柄情報を取得するための2つのWebメソッドの文字列の2次元配列を追加します。
ステップ(7):Webサービスアプリケーションを実行すると、Webサービスのテストページが表示され、サービスメソッドをテストできます。
ステップ(8):メソッド名をクリックして、正しく実行されるかどうかを確認します。
ステップ(9):GetNameメソッドをテストするために、銘柄記号の1つを指定します。銘柄記号はハードコードされており、銘柄の名前を返します
Webサービスを利用する
Webサービスを使用するには、同じソリューションの下にWebサイトを作成します。 これは、ソリューションエクスプローラーでソリューション名を右クリックすることで実行できます。 Webサービスを呼び出すWebページには、返された結果を表示するラベルコントロールと、ポストバック用とサービス呼び出し用の2つのボタンコントロールが必要です。
Webアプリケーションのコンテンツファイルは次のとおりです。
Webアプリケーションのコードビハインドファイルは次のとおりです。
プロキシを作成する
プロキシは、Webサービスコードの代役です。 Webサービスを使用する前に、プロキシを作成する必要があります。 プロキシはクライアントアプリケーションに登録されます。 次に、クライアントアプリケーションは、ローカルメソッドを使用していたようにWebサービスを呼び出します。
プロキシは呼び出しを受け取り、適切な形式でラップして、SOAP要求としてサーバーに送信します。 SOAPはSimple Object Access Protocolの略です。 このプロトコルは、Webサービスデータの交換に使用されます。
サーバーがSOAPパッケージをクライアントに返すと、プロキシはすべてをデコードし、クライアントアプリケーションに提示します。
btnservice_Clickを使用してWebサービスを呼び出す前に、Web参照をアプリケーションに追加する必要があります。 これにより、プロキシクラスが透過的に作成され、btnservice_Clickイベントで使用されます。
プロキシを作成するには、次の手順を実行します。
ステップ(1):ソリューションエクスプローラーでWebアプリケーションエントリを右クリックし、[Web参照の追加]をクリックします。
ステップ(2):[このソリューションのWebサービス]を選択します。 StockService参照を返します。
ステップ(3):サービスをクリックすると、テストWebページが開きます。 デフォルトでは、作成されたプロキシは「localhost」と呼ばれ、名前を変更できます。 [参照の追加]をクリックして、クライアントアプリケーションにプロキシを追加します。
以下を追加して、コードビハインドファイルにプロキシを含めます。