WSDLファイルがあり、WSDLに準拠するWebサービスを作成しようとしています。
既存のサービスを使用するWSDLファイルを使用してクライアントを作成しましたが、特定のWSDLに従う必要があるWebサービスを作成したことはありません。
私は使用する限り行ってきました:
wsdl.exe mywsdl.wsdl /l:VB /serverInterface
これで、そのWSDLから.vbファイルが生成されました。ただし、このVBファイルで何を行うべきかはわかりません。そこにはパブリックインターフェイスがありますが、インターフェイスを実装するクラスはありません。 WSDLの型の部分クラス。
サービスコールを完了するためにコードを挿入するスタブがあることを期待していました。私は以前に単純なWebサービスを作成しただけで、パブリックインターフェイスを使用していなかったため、ここで何が行われているのかよくわかりません。
この時点で、生成された.vbファイルをどのように使用し、.asmxファイルで動作させるか、インターフェイスを完成させるために必要な追加のコーディングがわからない。
すでにインターフェースを作成している場合は、それらのインターフェースを実装する必要があります。
新しいWebサービスを作成し、生成したインターフェイスを追加して、そのインターフェイスから継承するようにします。 Visual Studioは、インターフェイス内のすべてのメソッドのスタブを自動的に生成できます。 WebMethod属性でマークし、テストデータ/結果を返すコードを挿入します。
このインターフェースを使用している場合(さらに自動生成された属性がいくつかあります):
public interface IRealWebService
{
string GetName();
}
新しいサービスを作成する必要があります。
public class WebTestService : System.Web.Services.WebService, IRealWebService
{
#region IRealWebService Members
[WebMethod]
public string GetName()
{
return "It Works !!!!";
}
#endregion
}
必要なことは、WSDL.EXEが生成したインターフェイスから継承するクラスを作成し、インターフェイスからメソッドを実装することだけです。