1

上司から元のwsdlファイルを入手し、それに基づいてダミーWebサービスを作成するように依頼しました。次に、ダミーWebサービスから生成された新しいwsdlファイルを使用してテストするクライアントを作成します。これは、元のwsdlとまったく同じである必要があります。残念ながら、ダミーWebサービスによって生成された新しいwsdlは、元のwsdlとは異なることがわかりました。誰でも理由を教えてもらえますか?元のWSDLと同じWSDLを取得するにはどうすればよいですか?ありがとう!

このタスクのために私がしたこと:

  1. SvcUtil.exe /sc original.wsdl-> C#サービスクラスを取得し、その具体的なクラスを実装するには(ダミーのWebサービス)
  2. svcutil /t:metadata 'http://localhost/myservice/test.svc?singlewsdl'->実行中のダミーWebサービスから新しいWSDLを取得しますが、元のWebサービスとは異なります
  3. WSDLImp.exeDelphiクライアント(テストクライアント)のプロキシクラスを作成するには
4

1 に答える 1

1

それは常にそうなるでしょう。2つの異なるWSDLを比較しています。1つは、クライアントと共有され、SvcUtilでサービスを生成するために使用される仮想WSDLです。Webサービスをデプロイし、それが共有するWSDLを確認すると、具体的なWSDLが作成されます。

これはクライアント間で共有する可能性が高いWSDLであるため、仮想WSDLに基づいてサービス呼び出しを行うことにより、新しいサービスをテストすることをお勧めします。SoaupUIは、仮想WSDLに基づいてテストを生成および実行できます。

于 2013-02-26T06:51:08.520 に答える