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,其中 MaxReceivedMessageSize 将整体消息的大小 (标头和正文) 并 MaxBufferSize 绑定 SOAP 标头的大小。