2012-08-03 53 views
11

私はwsdlファイルのみを持っていると仮定して、どのようにプロキシクラスを作成していろいろな方法でWebサービスを呼び出すことができます。どのようにWebサービス関連のすべてのクラスとそのプロパティ&メソッドは私のC#のアプリケーションで公開されます。誰でも私の指導を助けることができます。ありがとうWebサービスの場合WSDLからプロキシクラスを生成する方法

+3

'wsdl.exe'または' svcutil.exe'を検索してください –

+0

私はsvcutilがwebserviceではないWCFに関連していることを知っていますが、私は確信していません。 – Thomas

+0

http://msdn.microsoft.com/en-us/library/7h3ystb6.aspx - 注意svcutil.exeはwsdl.exeを使用することを推奨しています。後者は従来の技術と見なされます。 –

答えて

6

通信するサービスのクライアントプロキシを生成するには、ServiceModel Metadata Utility Tool、またはVisual StudioのAdd Service Reference Dialogを使用する必要があります。生成されたプロキシは、サービスコントラクトを抽象化するクラスを提供し、これらのクラスと対話するようにクライアントアプリケーションをプログラミングできます。

+0

Web参照を追加するとWebサービスのURLを知る必要がありますが、場合によってはサードパーティの企業がwsdlファイルのみを提供しているのを見たことがあります。私はwsdlからプロキシを生成する場合どのようにプロキシがWebサービスと対話することができます。どのようにプロキシクラスは、webservice .....の実際のURLを知っていることができますこの概念を議論することができます – Thomas

+0

WebサービスのURLはどのようにwsdlファイルに格納されますか?タグが格納されます。 wsdlファイルにどのようにWebサービスのURLが格納されているかを指摘するために、サンプルのwsdlコードを与えてください。ありがとう – Thomas

+0

プロキシは生成されたため、サービスのエンドポイントに関する情報はありません。プロキシ(またはチャネル)をインスタンス化するときは、使用するバインディングとエンドポイントを指定する必要があります。この情報は、上記のツールも生成する構成ファイルから読み取ることができます。 http://msdn.microsoft.com/en-us/library/ms576141.aspxを参照してください。 – lesscode

7

ユーティリティがあり、それは、Visual Studio(2005年以降、私は思う)でshipps、それはコマンドラインだし、プロキシを生成するために使用することができwsdl.exe

と呼ばれます。

+0

の場合、Web参照を追加すると、いくつかのケースで私はサードパーティの会社がwsdlファイルのみを提供しているのを見ました。私はwsdlからプロキシを生成する場合どのようにプロキシがWebサービスと対話することができます。どのようにプロキシクラスは、Webサービスの実際のURLを知って..... .....この概念を議論することができます – Thomas

+0

参照として追加されたプロキシと同じです。プロキシ自体にWebServiceの場所に関する情報が含まれていません。 Webサービスの設定はWeb.config/app.configファイルにあります。 Web参照を追加すると、クライアント設定が生成されます。独自のプロキシを追加する場合は、自分で設定を追加する必要があります。あるいは、URLをクライアントのコンストラクタパラメータとして渡すことができるはずです。 – Varius

+0

あなたはとても近くにあった – toddmo

2

コマンドラインを使用してWSDL.exeツールを使用できます。

すなわちWseWsdl3 WSDLPath /out:MyProxyClass.cs

+0

構文が間違っていると思います。我々はWeb参照を追加するとき、私たちはwebserviceのURLを知る必要がありますが、場合によっては、サードパーティの会社がwsdlファイルのみを提供しているのを見たことがあります。私はwsdlからプロキシを生成する場合どのようにプロキシがWebサービスと対話することができます。プロキシクラスがWebサービスの実際のURLをどのように知っているか.....この概念について議論することができます。 – Thomas

+0

WSDLにはタグのようなサービスアドレスがあります。プロキシを生成すると、設定で、相互作用に使用するサービスURLを決定する構成値が生成されます。 – VRK

1

WseWsdl3.exeは、プロキシクラスを作成することができないならば、道がまだあります。

IISで通常のASP.NET Webアプリケーションとしてサービスを実行できる場合は、プロキシクラスがうまく生成された一時的なASP.NETファイルが作成されます。

あなたはフォルダにそれを見つけることができます。

C:\ WINDOWS \ Microsoft.NET \ Frameworkの\ vMAJOR.MINOR.BUILD \ ASP.NETの一時ファイル\ YOUR_WEB_APP。 ランダムな名前のサブフォルダがいくつかあります。最近のものに行き、 "App_WebReferences.XXXX.0.cs"のように見えます。

関連する問題