Sdílet prostřednictvím


HttpResponseMessageProperty.SuppressPreamble Vlastnost

Definice

Získá nebo nastaví, zda je potlačena preambule zprávy.

public:
 property bool SuppressPreamble { bool get(); void set(bool value); };
public bool SuppressPreamble { get; set; }
member this.SuppressPreamble : bool with get, set
Public Property SuppressPreamble As Boolean

Hodnota vlastnosti

trueje-li potlačena preambule sdělení; v opačném případě . false

Poznámky

Vlastnost SuppressPreamble umožňuje uživatelům zapisovat obsah do OutputStream z v rámci těla operace WCF. To se projeví pouze ve scénářích hostovaných na webu. Vlastnost SuppressPreamble je false ve výchozím nastavení.

Upozornění

SuppressPreamble Pokud je vlastnost nastavena na true, musíte nastavit hlavičky, typ obsahu, stavový kód v odpovědi, protože WCF už to nebude dělat.

Následující kód ukazuje příklad, jak to udělat.

public class Service1 : IService1  
{  
    public void GetData()  
    {  
        HttpContext hc = HttpContext.Current;  
        string str = @"<?xml version=""1.0"" encoding=""utf-8"" ?>";  
        var buffer = new byte[str.Length];  
        buffer = ASCIIEncoding.UTF8.GetBytes(str);  

        // Enable the property.
        var responseProperty = new HttpResponseMessageProperty();  
        responseProperty.SuppressPreamble = true;  
        OperationContext.Current.OutgoingMessageProperties[HttpResponseMessageProperty.Name] = responseProperty;  

        // Set the response.
        hc.Response.StatusCode = 200;  
        hc.Response.ContentType = "text/xml; charset=utf-8";  
        hc.Response.ClearContent();  
        hc.Response.Flush();  

        hc.Response.OutputStream.Write(buffer, 0, buffer.Length);  
        hc.Response.Flush();  
   }  
}  

Platí pro