私はWCFサービスライブラリを持っています。デフォルトではベースアドレスがあり、エンドポイントアドレスを指定するときにそれをコメントアウトして完全なアドレスを追加しました。エンドポイント アドレスを使用して wcf サービスにアクセスしようとすると、アクセスできません。
1.Visual Studio で WCF サービス ライブラリ プロジェクトを作成しました
2. web.config のデフォルトでは、サービスのベース アドレスがあり、エンド ポイントには ""(相対アドレス) があります。
3. 私の理解では、EndPoint に完全なアドレスがある場合、ベース アドレスは必須ではないと想定しています。私の理解は正しいですか?
3a. 今、私は自分のベースアドレスを削除し、エンドポイントに完全な URL を追加しました (私が何をしたかについては、添付の構成を参照してください)
4. Visual Studio ソリューションで f5 をクリックしようとすると、デフォルトのホスティング画面にエラーが表示されます。
5. また、エンドポイントで指定した完全な URL をコピーして Web ブラウザーに貼り付けましたが、404 エラーが発生します。
6.WCF サービス ライブラリ テンプレートを使用して作成されたサービスを公開するには、ベース アドレスが必要ですか?
だから私が間違いを犯している場所を教えてください。私の構成を添付しています。
</serviceHostingEnvironment>
<services>
<service name="WcfServiceLibrary1.Service1" behaviorConfiguration="WcfServiceLibrary.Service1Behavior">
<!--<host>
<baseAddresses>
<add baseAddress = "" />
</baseAddresses>
</host>-->
<!-- Service Endpoints -->
<!-- Unless fully qualified, address is relative to base address supplied above -->
<endpoint address="http://localhost:8732/Service2/pavan" binding="basicHttpBinding" contract="WcfServiceLibrary1.IService1">
</endpoint>
<!--<endpoint address="http://localhost:8732/Service2/mex" binding="mexHttpBinding" contract="IMetadataExchange"/>-->
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="WcfServiceLibrary.Service1Behavior">
<serviceMetadata httpGetEnabled="True"/>
<serviceDebug includeExceptionDetailInFaults="False" />
</behavior>
</serviceBehaviors>
</behaviors>