Puede cambiar el tipo de contenido de la respuesta en cualquier método de su servicio web WCF utilizando el WebOperationContext class.
Sólo como ejemplo el siguiente código muestra cómo utilizar esta clase para establecer el tipo de contenido application/xml y devolver una secuencia codificación UTF-8:
[ServiceContract]
public interface IPolicyProvider
{
[OperationContract, WebGet(UriTemplate = "/ClientAccessPolicy.xml")]
Stream ProvidePolicy();
}
public sealed class StockService : IPolicyProvider
{
public Stream ProvidePolicy()
{
WebOperationContext.Current.OutgoingResponse.ContentType = "application/xml";
return new MemoryStream(Encoding.UTF8.GetBytes(File.ReadAllText("ClientAccessPolicy.xml")) , false);
}
}
Si le interesa este ejemplo es con el propósito de habilitar llamadas entre dominios para clientes de Silverlight en un servicio web WCF autohospedado, eche un vistazo a here para obtener más información y tengo un código de descarga attached to this post.
En su situación, para la respuesta de su servicio WCF debería configurar el tipo de contenido como application/soap + xml y usar UTF-8.
La clase WebOperationContext está en el ensamblado System.ServiceModel.Web y es parte de .NET Framework 3.5.
Espero que esto ayude.
Gracias por la información ... resulta que uno de los servicios se configuró en el servidor para wsHttpBinding. – Kevin