Ответ 1
Ах, нашел. Раздел ServiceModel на веб-сайте web.config
был установлен в customBinding. Изменил его так, чтобы он соответствовал тому, что посылал клиент, и теперь он прекрасно работает.
У меня есть веб-сайт с поддержкой WCF Silverlight. Служба работает нормально, и я могу без проблем просматривать страницу WSDL в браузере.
Теперь я пытаюсь создать клиент в DLL. Мне нужно создать весь клиент программно, потому что он вызывается в DLL, который по какой-либо причине (по дизайну?) Не будет читать раздел ServiceModel из собственного файла конфигурации.
Итак, вот мой код:
Dim endp As EndpointAddress = New EndpointAddress("http://www.mydomain.com/licensing/lic.svc")
Dim bind As WSHttpBinding = New WSHttpBinding()
Dim svc = New lnt.licClient(bind, endp)
Dim rsp = svc.CheckIt(key)
Но когда я вызываю метод svc.CheckIt, я получаю следующую ошибку:
Content Type application/soap+xml; charset=utf-8 was not supported by service http://www.mydomain.com/licensing/lic.svc.
The client and service bindings may be mismatched.
{"The remote server returned an error: (415) Cannot process the message because the content type 'application/soap+xml; charset=utf-8' was not the expected type 'application/soap+msbin1'.."}
Как правильно создать мой клиент, чтобы они были правильно "сопоставлены"?
Спасибо заранее.
Ах, нашел. Раздел ServiceModel на веб-сайте web.config
был установлен в customBinding. Изменил его так, чтобы он соответствовал тому, что посылал клиент, и теперь он прекрасно работает.
Я столкнулся с этой проблемой. Более конкретно, мое исправление заключалось в обновлении типа привязок, которые я использовал. Я использовал wsHttpBindings
вместо basicHttpBindings
. Это вызвало ошибки, поскольку wsHttpBindings
использует SOAP 1.2, а basicHttpBindings
использует SOAP 1.1, а сервис, который я использовал, SOAP 1.1
У меня была такая же ошибка. Сервис компилировался, клиентская реклама тоже. Ссылка службы в заявке клиента была успешно обновлена. Я попытался удалить и добавить ссылку еще раз, и это не помогло. Проблема заключалась в удаленном интерфейсе в веб-службе.