2014-12-02 2 views
0

Я пытаюсь понять, почему у меня есть стандартные конечные точки, определенные в файле конфигурации, потому что у меня создается впечатление, что конечные точки, которые я определил под службами, должны использоваться. Если я прокомментирую стандартную конечную точку, то, когда я запустил службу, я получаю сообщение "No Endpoint found"Использование стандартной конечной точки

Так что мне нужны оба? Если да, то как используются стандартные точки? Спасибо,

<standardEndpoints> 
    <webHttpEndpoint> 
    <standardEndpoint name="" helpEnabled ="true" 
         automaticFormatSelectionEnabled ="true"></standardEndpoint> 
    </webHttpEndpoint> 
</standardEndpoints> 

<services> 
    <service name ="SimRestService" behaviorConfiguration ="MyServiceBehavior"> 
    <endpoint address="" binding="basicHttpBinding" bindingConfiguration="defaultBasicHttpBinding" 
     contract="SimRestServices.ISimRestService" /> 
    </service> 

+0

Где вы принимаете услугу WCF? Selfhosted или IIS? –

+0

буду хостинг в IIS – user2127344

ответ

0

Вы можете также создавать службы и ServiceContract код? Я подозреваю, что ваша служба написана как служба REST (с атрибутами [WebGet] и/или [WebInvoke] в ваших методах обслуживания).

Методы REST требуют конечной точки с webHttpBinding. Конечная точка, которую вы предоставляете, имеет basicHttpBinding, поэтому она не применяется.

+0

_ _ Sub AddRecord (ByVal ID As String, ByVal data As String) – user2127344

+0

Ваш сервис действительно является службой REST, и, как я указал выше, для этого требуется webHttpBinding. Если вы не хотите добавлять стандартные конечные точки, вы должны по крайней мере изменить конечную точку обслуживания, чтобы вместо этого использовать webHttpBinding.

+0

Мой настоящий вопрос был не о webHttpBinding, а в понимании и использовании standardEndpoints, как они полезны? Как вы уже упоминали, что я могу добавить конечные точки службы с помощью webhttpbinding, тогда где используется стандартная точка? – user2127344

Смежные вопросы