Что вы подразумеваете под «добавлением атрибута к операциям в клиентском прокси»? В каком файле это должно быть добавлено?

рнутый сервис wcf (.net 4.0). Конфигурация на стороне службы выглядит так:

<endpoint address="" 
          binding="webHttpBinding" 
          bindingNamespace="https://mydomain/myservice/services"     
          behaviorConfiguration="WebBehavior"
          contract="MyService" />

<endpointBehaviors>
  <behavior name="WebBehavior">
    <webHttp />
  </behavior>
</endpointBehaviors>

Попытка использовать сервис в веб-приложении,web.config выглядит как:

<system.serviceModel>
    <client>      
        <endpoint name="MyServiceEndpointBasicHttp" 
                  address="http://myDomain/myService"
                  binding="webHttpBinding" behaviorConfiguration="webBehavior" 
                  contract="MyNamespace.IMyService" />
     </client>
     <behaviors>
         <endpointBehaviors>
             <behavior name="webBehavior">
                 <webHttp />       
             </behavior>     
          </endpointBehaviors>
     </behaviors>
</system.serviceModel>

Я получаю исключение при вызове службы:

Операция «Method1» контракта «IMyService» задает несколько параметров тела запроса для сериализации без каких-либо элементов-оболочек. Максимум один параметр тела может быть сериализован без элементов оболочки. Либо удалите дополнительные параметры тела, либо установите для свойства BodyStyle в WebGetAttribute / WebInvokeAttribute значение Wrapped.

После некоторого поиска в Google, мы установили[WebGet(BodyStyle = WebMessageBodyStyle.WrappedRequest, ResponseFormat = WebMessageFormat.Xml)] на методы, но безуспешно ...

Одна интересная вещь: всегда есть одно и то же имя метода в исключении, даже если я вызываю другие методы ...

Сервис отлично работает в режиме REST при тестировании с браузером путем ввода имени метода и необходимых параметров ...

Ответы на вопрос(0)

Ваш ответ на вопрос