BasicHttpBinding.MaxReceivedMessageSize 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定可在使用此繫結所設定之通道上接收的訊息大小上限 (以位元組為單位)。
public:
property long MaxReceivedMessageSize { long get(); void set(long value); };
public long MaxReceivedMessageSize { get; set; }
member this.MaxReceivedMessageSize : int64 with get, set
Public Property MaxReceivedMessageSize As Long
屬性值
由此繫結處理之訊息的大小上限,單位為位元組。 預設值為 65,536 位元組。
例外狀況
這個值小於零。
範例
下列範例會將 MaxReceivedMessageSize 設定為 1,000,000 個位元組。
BasicHttpBinding binding = new BasicHttpBinding();
binding.MaxReceivedMessageSize = 1000000;
這個屬性的值也可以在組態檔中設定。
<configuration>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="Binding1"
maxReceivedMessageSize = "1000000">
<security mode="None" />
</binding>
</basicHttpBinding>
</bindings>
</system.serviceModel>
</configuration>
備註
使用 BasicHttpBinding 的服務可接收的訊息大小,會受到配置給每個訊息的記憶體數量所系結。 這項關於訊息大小的限制是為了防止受到 DoS 攻擊。
上也有 屬性:
如果是經過緩衝處理的傳輸 (TransferMode 設定為 Buffered), 這個值一律等於 MaxReceivedMessageSize 所指定的值。
如果是經過資料流處理的傳輸 (TransferMode 設定為 Streamed),則只有 SOAP 標頭必須經過緩衝才能產生訊息。 本文可視需要以資料流處理。 在此情況下, MaxBufferSize 小於或等於 MaxReceivedMessageSize,其中 MaxReceivedMessageSize 會將整體訊息的大小系結 (標頭和本文) ,並 MaxBufferSize 系結 SOAP 標頭的大小。