У меня есть Клиент WCF, который взаимодействует с WCF сервис (работает AspNetCompabilityMode), и я хотел бы добавить печенье (на клиенте) к каждому вызову этой веб-службы.
Я просмотрел HttpTransportBindingElement, но не могу найти, куда добавить свой файл cookie - можно ли добавить файл cookie в HttpTransportBindingElement, или мне следует рассмотреть другой подход?





Вы должны установить опцию конфигурации allowCookies для привязки к ложный. Это звучит странно, но здесь объясняется, почему:
Как только вы это сделаете, вам нужно будет добавить файлы cookie самостоятельно, используя метод, описанный здесь:
Метод, описанный в http://kennyw.com/indigo/153, работает для каждого вызова службы. Это означает, что вы должны убедиться, что все вызовы вашей службы WCF выполнены. после создается объект OperationContextScope, и перед размещается для того, чтобы это работало. В противном случае cookie никогда не будет добавлен в запрос.
Если вы ищете централизованное решение для ручного добавления файла cookie ко всем исходящим HTTP-запросам, отправляемым к службе WCF, посмотрите этот поток:
http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/624fb3f9-222d-4795-9140-fe9ef3934361/
http://megakemp.wordpress.com/2009/02/06/managing-shared-cookies-in-wcf/
В отличие от других руководств, представленных в других ответах, это содержит всю необходимую информацию в одном месте и хорошо структурировано.