NET を使用して Web サービスをVisual C#する

この記事では、2 つの数値を追加、減算、除算、乗算するメソッドを公開する 、MathService と呼ばれる Web サービスを記述するのに役立ちます。

元の製品バージョン:   Visual C# .NET
元の KB 番号:   308359

要件

次の一覧では、必要な推奨ハードウェア、ソフトウェア、スキル、知識について説明します。

  • Microsoft Windows
  • インターネット インフォメーション サーバー
  • Visual Studio .NET

この記事では、「.NET 統合開発環境で使用する方法」をVisual Studio前提とします。

.asmx Web サービスの作成

  1. .NET Visual Studio開きます。

  2. [ファイル]メニューの[新規]を選択し、[ファイル]をProject。 [プロジェクト Project] で、[プロジェクト]をVisual C#します。 次に、[テンプレート ASP.NET Web サービス] を****選択します。 既定 の名前 (WebService1) を MathService に変更するには、[場所] テキスト ボックスに 「MathService」 と入力します。

  3. Service1.asmx から MathService.asmx に作成される既定の Web サービスの名前を変更します

  4. [ クリック] を 選択して、デザイナー環境でコード ビューに切り替えます。

  5. サービスの機能をカプセル化するメソッドを定義します。 サービスから公開される各メソッドには、その前に属性のフラグ WebMethod を設定する必要があります。 この属性がない場合、メソッドはサービスから公開されません。

    注意

    すべてのメソッドに属性が必要 WebMethod な場合があります。 パブリック Web サービス メソッドによって呼び出される実装の詳細を非表示にしたり、クラスがローカル アプリケーションでも使用される場合に役立 WebService ちます。 ローカル アプリケーションは任意のパブリック クラスを使用できますが、Web サービスとしてリモートからアクセスできるのはメソッド WebMethod のみです。

    作成したクラスに次 MathServices のメソッドを追加します。

    [WebMethod]
    public int Add(int a, int b)
    {
      return(a + b);
    }
    [WebMethod]
    public System.Single Subtract(System.Single A, System.Single B)
    {
      return (A - B);
    }
    [WebMethod]
    public System.Single Multiply(System.Single A, System.Single B)
    {
      return A * B;
    }
    [WebMethod]
    public System.Single Divide(System.Single A, System.Single B)
    {
      if(B == 0) return -1;
      return Convert.ToSingle(A / B);
    }
    
  6. [ ビルド] メニューの [ビルド] を 選択して、Web サービスをビルドします。

  7. MathService.asmx Web サービス ページを参照して、Web サービスをテストします。 ページをホストするローカル コンピューターを設定した場合、URL は http://localhost/MathService/MathService.asmx です。

この ASP.NET は、Web サービスについて説明する Web サービス ヘルプ ページを返します。 このページでは、さまざまな Web サービス メソッドをテストすることもできます。

Web サービスを使用する

  1. .NET Visual Studio開きます。

  2. [Project] で、[プロジェクト] をVisual C#し、[テンプレート] の 下の [ コンソール アプリケーション] を選択します

  3. MathService Web サービスの参照を新しいコンソール アプリケーションに追加します。

    この手順では、クライアント コンピューターにプロキシ クラスを作成します。 プロキシ クラスが存在した後、クラスに基づいてオブジェクトを作成できます。 オブジェクトで行われた各メソッド呼び出しは、Web サービスの一様リソース識別子 (URI) に送信されます (通常は SOAP 要求として)。

    1. [Web 参照 Project] メニューの [Web 参照の追加] を選択します
    2. [Web 参照の追加] ダイアログ ボックスで、[アドレス] テキストボックスに Web サービスの URL を入力し、Enter キーを押します。 Web サービスをホストするローカル コンピューターを設定した場合、URL はです http://localhost/MathService/MathService.asmx
    3. [参照の追加] を選択します。 または、探索ファイル (MathService.vsdisco) の URL を入力するか、左側のウィンドウで [ローカル Web サーバー上の Web 参照] を選択して、一覧から MathService サービスを選択できます。
    4. ソリューション エクスプローラー の [Web 参照] セクションを展開し、使用した名前空間をメモします。
  4. 作成されたプロキシ オブジェクトのインスタンスを作成します。 次のコードを呼び出す関数に配置します Main

    localhost.Service1 myMathService = new localhost.Service1();
    
  5. 次のように、前の手順で作成したプロキシ オブジェクトのメソッドを呼び出します。

    Console.Write("2 + 4 = {0}", myMathService.Add(2,4));
    
  6. [ ビルド] メニューの [ビルド] を 選択して、コンソール アプリケーションをビルドします。

  7. [デバッグ ] メニュー[スタート] を 選択して、アプリケーションをテストします。

  8. プロジェクトを閉じて保存します。

関連情報

詳細については、「Visual Studio .NET ヘルプ」の「Web サービスを使用した Web のプログラミング」トピック、.NET Framework 開発者向けガイドの 「ASP.NET Web サービス と ASP.NET Web サービス クライアント」を参照してください。

詳細については、次の Web サイトを参照してください。