BasicHttpBinding.MaxReceivedMessageSize 属性

定义

获取或设置配置了此绑定配置的通道上可以接收的消息的最大大小(以字节为单位)。

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

属性值

Int64

绑定可处理的最大消息大小(以字节为单位)。 默认值为 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,其中 MaxReceivedMessageSize 将整体消息的大小 (标头和正文) 并 MaxBufferSize 绑定 SOAP 标头的大小。

适用于