2011-01-20 4 views
4

私はWebサービスの学習を始めました。 Webサービス、UDDI、WSDL、SOAPなどとWebサービスのアーキテクチャについて学びました。 Visual Studioはローカルシステムでサービスを正常に実行しています。IISでのWebサービスの展開ですか?

次に、そのWebサービスのフォルダ全体をIIS wwwrootに配置し、テストしました。正常に動作しています。私はwwwrootの\ webService1フォルダから他のファイルを削除するとき

はしかし、その後もサービスが実行されている(私だけのService1.asmxビンフォルダを左)。ここで

私は2つだけファイルがWebサービス1をru​​uningに使用されていることがわかりはの.asmxであり、もう一つはビンフォルダ内のwebService.dllです。

Webサービスを実行するために必要なSOAP、WSDL、名前空間、その他のものがどこにあるのか分かりません。

明確にしてください。

答えて

6

SOAP、WSDL、名前空間はすべてIISとASP.NETで処理されます。シナリオでは、Webサービスのエンドポイントはasmxファイル(デプロイメントには.csファイルが必要)であり、binフォルダのDLLには、Webサービス用に記述したコードが含まれています。

WebサービスをWebブラウザで呼び出すと、Webメソッドがテスト対象として表示されます。 IISは* .asmxファイルを処理する方法を知っています。 1つをクリックすると、サンプルフォーム(入力パラメータが必要な場合)とボタンが表示されます。ここでも、IISはこれをどのように提供するかを知っています。ボタンをクリックすると、IISとASP.NETはリクエストをSOAP処理し、コードで処理し、応答をSOAPで処理します。

Visual Studioで "テスト"プロジェクトを作成し、デプロイされたWebサービスを指すWebサービス参照を設定すると、Visual Studioはプロキシクラスを作成し、そのサービスの追加コードを取得します。それを試してみてください。 Webサービスを定義するWSDL、reference.csというファイルには、Webサービスを呼び出すためのコードが含まれています(アプリケーションからの要求のSOAP化と応答からの解放)。

Fiddlerというツールをダウンロードした場合、WebサービスへのSOAP呼び出しを傍受して調べることができるはずです。

詳細については、Web Services with ASP.NETをご覧ください。

+0

ああ!私はあなたの説明に満足しています。 – PawanS

2

これはプロトコルだと思うし、何も必要ない。 IISと要求するアプリケーションは、これらのプロトコルを理解しています。

3

「ファイル」はありません。 asmxdllファイルには、サービスのすべてのコードが含まれています。あなたは、SOAP/WSDL情報のために要求されたURLのいくつかを見ることができます。

+0

あなたが言うことを意味する...私は私のcodebehind.csコードをコンパイルすると、それはWebサービスに必要なすべての項目が必要です...コンパイルされるので、私はwsdlまたはSOAPを要求するときに私はブラウザのURLから取得します – PawanS

+0

wsdlまたはsoapをリクエストすると、ブラウザのURLは、サービスに必要なdllとasmxファイルがどれだけ必要なのかを説明するのに役立ちます。その情報は、asmxファイルをリンクするURLからではなく、特定のクエリ文字列値を使用している可能性があります。 –

3

?WSDLの後に.asmxを追加すると、その定義が表示されます。この例のような :

WSDL Example

+0

ys?wsdlを追加した後にWSDLファイルを取得していますが、wsdlなどの名前空間を指定していないため、このwsdlまたはsoapが生成されています。 – PawanS

関連する問題