HttpResponseMessageProperty.SuppressPreamble Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Dostaje lub określa, czy preambuła wiadomości jest pomijana.
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
Wartość właściwości
true
jeżeli preambuła wiadomości jest pomijana; w przeciwnym razie , false
.
Uwagi
Właściwość SuppressPreamble umożliwia użytkownikom zapisywanie zawartości w OutputStream treści operacji programu WCF. Ma to wpływ tylko na scenariusze hostowane w sieci Web. Właściwość SuppressPreamble jest false
domyślnie.
Ostrzeżenie
SuppressPreamble Jeśli właściwość jest ustawiona na true
, należy ustawić nagłówki, typ zawartości, kod stanu odpowiedzi, ponieważ program WCF nie zrobi tego już.
Poniższy kod przedstawia przykład tego, jak to zrobić.
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();
}
}