Я понял, что это вышло из прошлого, извините, что потребовалось столько времени, чтобы получить ответ.
Создайте отдельный сервисный контракт под названием IDefaultDocumentService с помощью одного метода на нем, который украшен как OperationContract, так и WebGet.
<OperationContract(), WebGet()>
Function GetDefaultDocument() As System.ServiceModel.Channels.Message
Теперь реализовать этот контакт в очень простой DefaultDocumentService класса
Public Class DefaultDocumentService
Implements IDefaultDocumentService
Public Function GetDefaultDoc() As Message Implements IDefaultDocumentService.GetDefaultDocument
Return Message.CreateMessage(MessageVersion.None, "", "Hello!")
End Function
End Class
В конфигурационном файле для вас окна службы подключить отдельный сервис для DefaultDocumentService и отобразить его в корневую директорию вашего друга Служба WCF. Когда вы размещаете эти службы в веб-ферме на ISA, она попадет в вашу службу документов по умолчанию и получит «Привет!». сообщение, которое достаточно для того, чтобы сервер ISA знал, что служба активна.
<system.serviceModel>
<services>
<service name="YourMainService">
<endpoint address="http://localhost:10000/YourMainService.svc"
binding="wsHttpBinding"
contract="IYourMainService" />
</service>
<service name="DefaultDocumentService">
<endpoint address="http://localhost:10000/"
binding="webHttpBinding"
behaviorConfiguration="DefaultDocumentEndpointBehavior"
contract="IDefaultDocumentService" />
</service>
</services>
<behaviors>
<endpointBehaviors>
<behavior name="DefaultDocumentEndpointBehavior">
<webHttp/>
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
Почему в названии вашего вопроса указывается «basicHttpBinding», в то время как вы говорите, что у вас есть служба Windows, выставляющая «netPeerTcpBinding»? –
Служба wcf имеет оба. Он участвует в сетке, используя один контракт и выставляя конечную точку basicHttpBinding, используя другой, гораздо более ограниченный контракт. –