HttpResponseMessageProperty.SuppressPreamble プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
メッセージ前文を抑制するかどうかを取得または設定します。
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
プロパティ値
メッセージの前文を抑制する場合は true。それ以外の場合は false。
注釈
このプロパティを使用すると、ユーザーは SuppressPreamble WCF 操作本文内からコンテンツを書き込 OutputStream めます。 これは、Web ホストされたシナリオでのみ有効になります。 SuppressPreambleこのプロパティはfalse既定で使用されます。
警告
プロパティが SuppressPreamble 設定 trueされている場合は、WCF では行われませんので、応答のヘッダー、コンテンツ タイプ、状態コードを設定する必要があります。
次のコードは、これを行う方法の例を示しています。
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();
}
}