En ocasiones un servicio web puede ser accedido de diferentes direcciones, configuración de redes, balanceos de carga… es posible especificar en un servicio WCF para que adopte la dirección de cabecera de forma automática en pocas líneas para los metadatos:
<behaviors> <serviceBehaviors> <behavior name="customBehaviour"> <useRequestHeadersForMetadataAddress> <defaultPorts> <add scheme="https" port="443" /> </defaultPorts> </useRequestHeadersForMetadataAddress> <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" /> <serviceDebug includeExceptionDetailInFaults="true" /> </behavior> </serviceBehaviors> </behaviors>
Para realizar manualmente la localización externa:
<serviceMetadata httpGetEnabled="true" externalMetadataLocation="https://ws.misitio.com/servicio.svc?wsdl"/>