BasicHttpBinding.MaxReceivedMessageSize Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene o imposta le dimensioni massime, in byte, per un messaggio che può essere ricevuto 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à
Dimensione massima, in byte, per un messaggio elaborato dall'associazione. L'impostazione predefinita è 65.536 byte.
Eccezioni
Il valore è minore di zero.
Esempio
Nell'esempio seguente MaxReceivedMessageSize viene impostato 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 in transito tramite servizi tramite BasicHttpBinding sono vincolate dalla quantità di memoria allocata per ogni messaggio. Questo limite alle dimensioni dei messaggi è destinato a limitare l'esposizione agli attacchi di tipo DoS.
È inoltre disponibile una MaxBufferSize proprietà in BasicHttpBinding:
Per i trasporti memorizzati nel buffer, (TransferMode impostato su Buffered). Questo valore è sempre uguale a quello specificato da MaxReceivedMessageSize.
Per i trasporti trasmessi (TransferMode impostato su Streamed), è necessario memorizzare nel buffer solo le intestazioni SOAP per generare il messaggio. 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.