ホームページ  >  記事  >  バックエンド開発  >  XML Web サービスのグラフィック コード例の詳細な紹介

XML Web サービスのグラフィック コード例の詳細な紹介

黄舟
黄舟オリジナル
2017-03-09 17:03:051570ブラウズ

XML Web サービスを初めて使用し、すぐに使い始めたい人にとっては、その作成方法と呼び出し方法をすぐに理解したいと思うかもしれません。この記事では、簡単な例を使用して、Visual Studio 2008 を使用して Web サービス を作成する方法と、それを呼び出す方法を説明します。この例の Web サービス は、クライアント プログラムのリクエストに基づいて画像を返します。

1. Webサービスプロジェクトを作成します

VS2008を開き、ファイル/新規/プロジェクトを選択し、開いた新しいプロジェクトダイアログボックスでVisual C# -> ASP.NET Webサービスアプリケーションを選択します。 , 次に、プロジェクト名(名前)、保存場所(位置)、ソリューション名(ソリューション名)を入力し、「OK」をクリックするとプロジェクトが生成されます。この例では、プロジェクトとソリューションの名前として AnnotationWebService を使用します (図 1 を参照)。

XML Web Service示例(图1)

1新しいプロジェクトダイアログ

2. VS2008 に Web サービス

を追加します。

ソリューション エクスプローラー

AnnotationWebService

項目を選択し、Project/を選択します新しい項目の追加メニュー項目。開いた新しい項目の追加ダイアログボックスでWeb/Webサービスを選択し、Webサービス(名前)の名前を入力し、[追加]をクリックしてAを追加しますウェブサービス。この例では、Web Service の名前として ImageService を使用します (図 2 を参照)。

XML Web Service示例(图2)

画像 2: 新しい項目を追加ダイアログ

の後は、Solution Explorerになります。このようなプロジェクト ディレクトリを参照してください (画像 3 を参照)。 (注: プロジェクトの作成時に、システムはデフォルトで Service1 という名前の Web サービス を追加します。右クリック メニューの 削除 項目をクリックして削除できます。)

XML Web Service示例(图3)

写真 3: ソリューションエクスプローラー

3. Web サービス エンコーディング

ImageService.asmxを右クリックし、マークアップの表示を選択すると、このファイルを開くことができ、次の行が表示されます:

画像サービス

コード

ImageService.asmx.cs

ファイル内。 ImageService.asmx を右クリックし、コードの表示 を選択し、ImageService.asmx.cs ファイルを開き、サービス コードを追加します。この例では、指定されたファイルに基づいて画像を読み取るプログラムを作成します。 name を取得し、それをクライアント メソッド GetImage に返します (以下のコードを参照)。

rree


IIS

に仮想ディレクトリ

(仮想ディレクトリ)

を追加

IISコンソールプログラムを開き、デフォルトWebサイトを右クリックし、メニュー項目の追加新規/仮想ディレクトリを選択し、開いた仮想ディレクトリキャプションウィザードダイアログボックスに仮想ディレクトリエイリアスを入力します。 (Alias)、この例では AnnotationWebService と入力し、[次へ] をクリックし、ImageService.asmx があるディレクトリを選択して、[完了] まで [次へ] をクリックします。 (注: 上記の説明は XP SP3 環境に基づいています。)

5. Web サービス用のプロキシ (Proxy) を作成する

VS2008で、Windowsアプリケーションソリューション(.sln)を開きます。この場合は、AnnotationAppというソリューションを開きます。Web サービス を呼び出すプロジェクトを右クリックし (たとえば、この例では DataLib を使用することを選択します)、Web 参照の追加 メニュー項目を選択します (Web 参照 を追加したことがない場合)表示されない場合があります Web 参照の追加 メニュー項目。まず、サービス参照の追加 メニュー項目を選択し、ポップアップ サービス参照の追加 ダイアログ ボックスで [詳細設定] をクリックしてから、ポップアップ サービス参照設定 ダイアログ ボックス " Web 参照の追加")、ポップアップ Web 参照の追加 ダイアログ ボックスで、呼び出したい Web サービスURL を入力しますこの例では、次のように入力します。

次に、「Go」をクリックすると、下の Web ページImageService が表示されます。 の使用を避けるために、Web 参照名 編集ボックスに Web によって参照される名前を入力します。 ImageService この名前として、ここでは ImageWebService (画像 4 を参照) と入力し、[参照の追加] をクリックして Web 参照を追加します。

XML Web Service示例(图4)写真

4

ウェブ参照を追加ダイアログ

これにより、ソリューション エクスプローラーWebリファレンスが追加されます(画像5を参照)。

XML Web Service示例(图5)写真

5

ウェブリファレンス追加しました

追加された参照は、

Image Service

のプロキシ コードです。これには、

System.Web.Services.Protocols.SoapHttpClientProtocolから派生した、ImageServiceと同じ名前のクラスが含まれています。このようにして、ImageServiceGetImage メソッドを、独自の Assembly のメソッドと同じようにクライアント コードで呼び出すことができます。

6.       客户程序调用Web Service

 

在客户程序中需要调取图像的地方增加如下代码(注:代码中的Image类不是.Net Framework类库中的Image类,是客户程序中的一个类):

 

    ImageService imageService = new ImageService();
            Bitmap bitmap;
            try
            {
                byte[] image = imageService.GetImage("half-bred panthers.jpg");
                MemoryStream memoryStream = new MemoryStream(image);
                bitmap = new Bitmap(memoryStream);
                _image = new Image(_viewportTransformer, bitmap);
            }
            catch (WebException e)
            {
                // Exception handling
            }

 

然后,可以将图像显示出来。

 

7.运行客户程序来测试Web Service调用

 

编译运行客户程序,Web Service被成功调用并返回所调用的图像(见图6)。

 

XML Web Service示例(图6)

写真 6: ランニング結果


以上がXML Web サービスのグラフィック コード例の詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。