Error WCF al ejecutar: el direccionamiento manual está habilitado en esta fábrica, por lo que todos los mensajes enviados deben ser direccionados previamente

Tengo un servicio WCF alojado con WebHttpBinding. El servicio es muy simple, un contrato de operación que acepta múltiples parámetros. Mi cliente WCF, generado automáticamente después de usar la "Agregar referencia de servicio", no puede consumir directamente el servicio WCF. El error solo ocurre para WebHttpBinding pero no para los demás.

Lado del servidor

[OperationContract]
[WebInvoke(Method = "POST", UriTemplate = "Submit2String", RequestFormat = WebMessageFormat.Xml, ResponseFormat = WebMessageFormat.Xml, BodyStyle = WebMessageBodyStyle.Wrapped)]
string Submit2String(string input1, string input2);

Lado del cliente

ExpenseServiceClient proxy = new ExpenseServiceClient();
proxy.Submit2String("test1", "test2");

Cuando pruebo ejecutar mi código anterior, obtengo el siguiente error:

Error: InvalidOperationException was unhandled by user code
Manual addressing is enabled on this factory, so all messages sent must be pre-addressed.

Aquí es cómo se ve mi archivo de configuración generado automáticamente después de usar la "Agregar referencia de servicio":

 <system.serviceModel>
  <bindings>
    <webHttpBinding>
      <binding name="webHttp">
        <security mode="None">
          <transport clientCredentialType="None" />
        </security>
      </binding>
    </webHttpBinding>
  </bindings>
  <client>
    <endpoint binding="webHttpBinding" 
              bindingConfiguration="webHttp"
              contract="ExpenseService.IExpenseService"  
              address="http://localhost/myservices/ExpenseService.svc">
    </endpoint>
  </client>
</system.serviceModel>

Respuestas a la pregunta(1)

Su respuesta a la pregunta