Я развертываю службу WCF на IIS 7, и когда я перехожу на URL-адрес службы, я получаю такую страницу:
Я не получаю типичную целевую страницувот так (скопировано из Интернета просто для примера, данные размыты для защиты невинных):
Может кто-нибудь сказать мне, что я делаю неправильно?Служба работает, как и ожидалось, но пользователю этой службы нечего просматривать, чтобы узнать, что это за методы или где получить WSDL.
Вот мои соответствующие файлы:
App.Config (в сервисном проекте и скопирован на сайт сервиса как Web.Config для IIS)
<system.web>
<compilation debug="true"/>
</system.web>
<system.serviceModel>
<services>
<service name="MyService.MyService" behaviorConfiguration="Web">
<clear />
<endpoint address=""
binding="wsHttpBinding"
name="ws"
behaviorConfiguration="Web"
contract="MyService.IMyService" />
<!--
<endpoint address=""
behaviorConfiguration="Web"
binding="webHttpBinding"
bindingConfiguration=""
name="web"
contract="MyService.IMyService" />
-->
<host>
<baseAddresses>
<add baseAddress="http://services.mydomain.com/MyService" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="Web">
<serviceMetadata httpGetEnabled="True"/>
<serviceDebug includeExceptionDetailInFaults="False"/>
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="Web">
<webHttp />
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
MyService.svc
<%@ ServiceHost Service="MyService.MyService"
Factory="System.ServiceModel.Activation.WebServiceHostFactory" %>
Я также попытался использовать «webHttpBinding» вместо «wsHttpBinding», и, похоже, это не имело значения.