views:

1046

answers:

2

I have a webservice and client in c#/dotnet and I am using EnableDecompression to gzip compress the responses that I get from the web server. Is it possible to compress the requests as well?

A: 

SOAP extensions allow you to monkey with the SOAP stream on both the client and server. They're nice because you can leave your service code alone - manipulation occurs before a webmethod begins and after it ends. They work a lot like an HttpModule but can be included on the client/request side as well.

Other than that, the only option that comes to mind is manually serializing and compressing large SOAP elements as byte[], then manually decompressing and deserializing on the server (shudder...). The maintenance issues with this approach are likely prohibitive.

Corbin March
A: 

I've found this tutorial on compressing SOAP messages in C#, using the SharpZipLib library and SOAP extensions:

Seems to garnish about a 30% compression, will be giving this a try today.

Marc