2012-01-16 26 views
0

SOAP WebサービスをVS.NET 2010インターフェイスに追加しようとしていますが、サーバーが接続を拒否してしまいます。サービスを担当する担当者が働いていると伝えます。私は彼らにwsdlファイルがあるかどうか尋ねましたが、おそらく彼らには何もありません。SOAP Webサービス参照を追加する

wsdlが不足しているために問題が発生していますか、それとも私の側に問題があると思われますか?

+0

私はWSDLについて消費者のためのWebサービスを開発しているかのように、WSDLについてもっと懸命に追いかけていきます。それはURLを介して一般に公開されているわけではありませんが、あなたに電子メールを送っても、あなたに提供することができるはずです。彼らがそれをすることさえできないなら、私は心配しています。 – aqwert

答えて

0

サービスがメタデータを公開していないようです。試してwsdlのURLを参照し、何かが戻ってくるかどうか確認してください。 http://server/blah/blah?wsdl

+0

それをしました。到達不能。ありがとう。 –

+0

フェア十分です。彼らはwsdlファイルまたはURLを取得する必要があります。そうしないと、サービス参照(またはWeb参照)を追加してサービスプロキシを作成できなくなります。サンプルのリクエストとレスポンスを持っていても、リクエストとレスポンスが複雑な場合は簡単ではない場合、サービスクライアントを手動で作成することは可能です。私は間違いなくwsdlを押すだろう。私の答えが助けられることを願っています。 –

+0

これは当てはまりません。プロキシの作成にメタデータは必要ありません。 'ChannelFactory'を使って、その場でプロキシを作成することができます。これは実際にはとても簡単です。私の例を見てください。 –

1

サービスのメタデータがサービスに公開されない場合は、サービス契約、操作、およびデータコントラクトを含むアセンブリにアクセスできるかどうかを確認します。次に、メタデータを必要とせずにサービスへのプロキシを作成できます。

// Create service proxy on the fly 
var factory = new ChannelFactory<IMyServiceContract>("NameOfMyClientEndpointInConfigFile"); 
var proxy = factory.CreateChannel(); 

// Create data contract 
var requestDataContract = new MyDataContract(); 

// Call service operation. 
var responseDataContract = proxy.MyServiceOperation(requestDataContract); 

あなたのクライアントの設定にそこから出エンドポイントの詳細をコピーすることができますので、あなたはサービス側の設定ファイルへのアクセス権を持っている場合にも役立ちます。

関連する問題