tamaño máximo mensajes los excedido entrantes cuota wcf

máximo - Tamaño del mensaje WCF



maxreceivedmessagesize web service c# (1)

¿Hay alguna manera de probar el tamaño de un mensaje antes de enviarlo al cliente? Me gustaría manejar la cuota máxima de tamaño de mensaje en el lado del servicio.


Puede escribir un MessageEncoder personalizado, usarlo en el lado del servicio y verificar el tamaño de un mensaje codificado dentro de WriteMessage métodos WriteMessage .

Siga esta guía y anule los métodos de tal manera:

public override ArraySegment<byte> WriteMessage(Message message, int maxMessageSize, BufferManager bufferManager, int messageOffset) { var result = this.text.WriteMessage(message, maxMessageSize, bufferManager, messageOffset); // Encoded message check logic. Console.WriteLine("Message sent. Length=" + result.Count); return result; } public override void WriteMessage(Message message, Stream stream) { var position = stream.Position; this.text.WriteMessage(message, stream); // Encoded message check logic. Console.WriteLine("Message sent. Length=" + (stream.Position - position)); }