IIS でホストされている WCF サービスで、複数のエンドポイントをセットアップしようとしています。1 つは SOAP 用、もう 1 つは SOAP12 用です。MSDN のドキュメントに従ってWeb.config
、次のように編集しました。
<services>
<service name="MyNamespace.MyClass">
<endpoint address="" binding="basicHttpBinding" contract="IContract" />
<endpoint address="Endpoint2" binding="wsHttpBinding" contract="IContract" />
</service>
</services>
これは効果がないようです。URLに答えはありません:
http://localhost:51454/MyClass.svc/Endpoint2
に変更IContract
するとIContract2
、次のエラーが表示されます。
The service '/MyClass.svc' cannot be activated due to an exception during
compilation.
だからWeb.config
私が編集しているのは使用されているものです。
デフォルト アドレスのバインディングを から に変更しbasicHttpBinding
てwsHttpBinding
も効果はありません。WSDL は同じままです。
WSDL には次のビットが含まれています。これは、生成されたバインディングを使用して実行されていることを示唆しているようです。
<wsdl:service name="TapasSim">
<wsdl:port name="BasicHttpBinding_IContract"
binding="i0:BasicHttpBinding_IContract">
<soap:address location="http://localhost:51454/MyClass.svc"/>
</wsdl:port>
</wsdl:service>
WCF サービスが の構成を使用しないのはなぜWeb.config
ですか? WCFが SOAP12 バインディングを
リッスンしないのはなぜですか? デフォルトのエンドポイントが からに
変わらないのはなぜですか?/Endpoint2
basicHttpBinding
wsHttpBinding