Condividi tramite


BasicHttpBinding.MaxReceivedMessageSize Proprietà

Definizione

Ottiene o imposta la dimensione massima in byte per messaggi che possono essere ricevuti in un canale configurato con questa associazione.

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

Valore della proprietà

Int64

Dimensione massima, in byte, per un messaggio elaborato dall'associazione. L'impostazione predefinita è 65.536 byte.

Eccezioni

Il valore è minore di zero.

Esempio

L'esempio seguente imposta MaxReceivedMessageSize su 1.000.000 byte.

BasicHttpBinding binding = new BasicHttpBinding();

binding.MaxReceivedMessageSize = 1000000;

Il valore di questa proprietà può essere impostato anche nel file di configurazione.

<configuration>
  <system.serviceModel>

    <bindings>
      <basicHttpBinding>
        <binding name="Binding1"
                 maxReceivedMessageSize = "1000000">
          <security mode="None" />
        </binding>
      </basicHttpBinding>
    </bindings>

  </system.serviceModel>

</configuration>

Commenti

Le dimensioni dei messaggi che possono essere ricevuti sul collegamento tramite servizi tramite BasicHttpBinding sono associati alla quantità di memoria allocata per ogni messaggio. Questo vincolo alla dimensione dei messaggi limita l'esposizione agli attacchi di tipo DoS.

Esiste inoltre una proprietà MaxBufferSize sulla classe BasicHttpBinding:

Per i trasporti con memorizzazione nel buffer (TransferMode impostato su Buffered). Questo valore è sempre uguale a quello specificato da MaxReceivedMessageSize.

Per i trasporti inviati nel flusso (proprietà TransferMode impostata su Streamed), per generare i messaggi devono essere memorizzate nel buffer solo le intestazioni SOAP. Il corpo può essere trasmesso su richiesta. In questo caso, MaxBufferSize è minore o uguale a MaxReceivedMessageSize, dove MaxReceivedMessageSize limita le dimensioni del messaggio complessivo (intestazioni e corpo) e MaxBufferSize limita le dimensioni delle intestazioni SOAP.

Si applica a