Служба WCF и клиент не поддерживают сжатие HTTP из коробки в .NET 3.5, даже если вы включаете динамическийСжатие в IIS 6 или 7. Это было исправлено в .NET 4, но тем, кто застрял в .NET 3.5 в обозримом будущем, вам не повезло.Во-первых, это ошибка IIS в том, что он не включает сжатие http для сообщений SOAP, даже если вы включаете динамическое сжатие в IIS 7. Во-вторых, это ошибка WCF, что он не отправляет Accept-Encoding: gzip, deflate header в запросах httpна сервер, который сообщает IIS, что клиент поддерживает сжатие.В-третьих, это опять ошибка WCF, что даже если вы заставите IIS отправить сжатый ответ, WCF не сможет его обработать, поскольку он не знает, как его распаковать.Итак, вам нужно настроить фабрики IIS и System.Net, чтобы заставить сжатие работать для служб WCF.Сжатие является ключевым фактором для производительности, поскольку оно может значительно сократить передачу данных с сервера на клиент и, таким образом, значительно повысить производительность, если вы обмениваетесь данными среднего и большого размера по глобальной сети или через Интернет.
Существует два шага - сначала настроить IIS, затем настройте System.Net.Нет необходимости настраивать что-либо в WCF, например использовать перехватчик сообщений для вставки заголовков HTTP