Desplegado servicio wcf (.net 4.0). Lado de los servicios de configuración se parece a:

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

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

Tratando de consumir el servicio web de la aplicación, web.config parece:

<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>

Estoy recibiendo excepción cuando el servicio de llamadas:

Operación ‘Method1’ de contrato
‘IMyService’ especifica varios
cuerpo de solicitud de parámetros a ser
serializado sin ningún tipo de contenedor
elementos. En la mayoría de un cuerpo parámetro
puede ser serializado sin envoltura
elementos. Quitar la extra en el cuerpo
los parámetros o establecer el BodyStyle
propiedad en el
WebGetAttribute/WebInvokeAttribute a
Envuelto.

Después de buscar un poco en google, hemos establecido [WebGet(BodyStyle = WebMessageBodyStyle.WrappedRequest, ResponseFormat = WebMessageFormat.Xml)] en los métodos, pero sin éxito…

Una cosa muy interesante: No es siempre el mismo nombre de método en la excepción, aun voy a llamar a otros métodos…

Servicio funciona bien en modo DESCANSO mientras se prueba con el navegador introduciendo el nombre del método y los parámetros necesarios…

Puede que nos muestran la contrato de servicio con la definición de sus métodos de servicio?

OriginalEl autor bruto | 2010-12-27

1 Comentario

  1. 3

    Parece que estamos enfrentando problema similar como en este hilo: Servicio WCF Proxy levanta una excepción si hay más de un parámetro se utiliza en [OperationContract] método

    «Parece que han creado el código Proxy mediante Agregar Referencia de Servicio de diálogo en el VS. VS ASR diálogo no admite WCF DESCANSAR plenamente, por lo que, el código proxy falta [atributos webinvoke] atributo. Puedes intentar agregar [atributos webinvoke(BodyStyle = WebMessageBodyStyle.Envuelto)] atributo en operaciones en el cliente de proxy?»

    ¿Qué entiende usted por «adición de atributo en las operaciones de proxy de cliente» ? En el archivo que tiene que ser añadido?

    OriginalEl autor amit

Dejar respuesta

Please enter your comment!
Please enter your name here