我正在尋找爲使用<ServiceBehavior>
而不是<EndpointBehavior>
配置的WCF服務啓用生成的幫助頁面。我的搜索結果中有95%與<EndpointBehavior>
有關,我發現<ServiceBehavior>
的內容很少或者沒有答案,缺少詳細信息,或者根本看起來不起作用。如何通過ServiceBehavior配置啓用WCF幫助頁面?
我不是IIS上託管的此服務的創建者,但其任務是爲該服務啓用幫助頁面。從我發現的情況來看,我應該可以簡單地啓用ServiceDebug元素下的httpHelpPageEnabled
屬性,但這不起作用,並且在瀏覽器中查看時添加httpHelpPageUrl
會中斷整個服務。
配置:無論如何。
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="false" multipleSiteBindingsEnabled="true" />
<bindings>
<basicHttpBinding>
<binding name="serviceBinding">
<security mode="None">
</security>
</binding>
</basicHttpBinding>
<wsHttpBinding>
<binding name="serviceWsBinding">
<security mode="None">
</security>
</binding>
</wsHttpBinding>
</bindings>
<client />
<services>
<service behaviorConfiguration="ServiceBehavior" name="ServicesLib.Service">
<endpoint listenUri="soap" name="soap" address="http://servicesdev.mySite.com/services/Service.svc/soap" binding="basicHttpBinding" bindingConfiguration="serviceBinding" contract="ServicesLib.IService" />
<endpoint listenUri="soap12" name="soap12" address="http://servicesdev.mySite.com/services/Service.svc/soap12" binding="wsHttpBinding" bindingConfiguration="serviceWsBinding" contract="ServicesLib.IService" />
<host>
<baseAddresses>
<add baseAddress="http://servicesdev.mySite.com/services" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<!-- These EndpointBehaviors aren't used, they are just here :? -->
<endpointBehaviors>
<behavior name="restBehavior">
<webHttp />
</behavior>
<behavior name="soapBehavior">
<webHttp helpEnabled="true" />
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="ServiceBehavior">
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" externalMetadataLocation="../Services.wsdl" />
<serviceDebug includeExceptionDetailInFaults="true" httpHelpPageEnabled="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
如果這不是無論什麼原因,正確的方法,也許有人可以點我在託管自定義幫助頁面的正確方向?我一直在閱讀this post的解決方案,以從Windows服務託管一個解決方案,但我不確定如何將此添加到以相同方式與服務一起託管的WCF服務。
明天我會更加註意這條路,因爲我想我可能不得不走這條路。 – WebDevNewbie
在做了一些進一步的研究之後,我們現在決定使用靜態html頁面。感謝您對此的澄清。 – WebDevNewbie