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 攻擊的風險。
在 上MaxBufferSize也BasicHttpBinding有一個性質:
對於緩衝傳輸,(TransferMode 設定為 Buffered)。 此值始終等於 MaxReceivedMessageSize 所指定的值。
對於串流傳輸(TransferMode 設定為 Streamed),只需緩衝 SOAP 標頭才能產生訊息。 屍體可以隨選串流播放。 此時 小 MaxBufferSize 於或等於 MaxReceivedMessageSize,其中 MaxReceivedMessageSize 限制了整體訊息(標頭與主體)的大小,並 MaxBufferSize 限制了 SOAP 標頭的大小。