HttpResponseMessageProperty.SuppressPreamble Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar eller anger om meddelandeingressen ignoreras.
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
Egenskapsvärde
trueom meddelandets ingress undertrycks; annars . false
Kommentarer
Egenskapen SuppressPreamble gör det möjligt för användare att skriva innehåll i OutputStream inifrån en WCF-åtgärdstext. Detta gäller endast för webhosted-scenarier. Egenskapen SuppressPreamble är false som standard.
Varning
Om egenskapen SuppressPreamble är inställd truepå måste du ange sidhuvuden, innehållstyp och statuskod för svaret eftersom WCF inte längre kommer att göra det.
Följande kod visar ett exempel på hur du gör detta.
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();
}
}