3

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?

horatio
  • 406
  • 1
  • 7
  • 16

2 Answers2

2

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
  • 25,526
  • 6
  • 73
  • 100
  • It looks like your 3rd link is just being redirected to http://searchwindevelopment.techtarget.com/?id=SOAPExtensions – Zack Aug 07 '14 at 16:10
  • @Zack - Yeah, the answer is almost six years old (!) and suffered from link rot. I replaced the bad link with a Microsoft article. Beware, SOAP extensions are not part of WCF and are therefore largely irrelevant. – Corbin March Aug 07 '14 at 17:53
0

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
  • 137
  • 3
  • 12