문제

Silverlight 지원 WCF 서비스가있는 웹 사이트가 있습니다. 서비스는 제대로 작동하며 브라우저의 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 설정되었습니다 커스텀 바인딩. 클라이언트가 보내는 내용과 일치하도록 변경했으며 이제는 아름답게 작동합니다.

다른 팁

나는이 같은 문제에 부딪쳤다. 더 뾰족하게 내 수정은 내가 사용하고있는 바인딩 유형을 업데이트하는 것이 었습니다. 나는 사용하고 있었다 wsHttpBindings 대신에 basicHttpBindings. 이것은 실패를 일으켰습니다 wsHttpBindings 비누 1.2 동안 사용합니다 basicHttpBindings SOAP 1.1을 사용하고 필요한 SOAP 1.1을 사용했습니다.

나는 같은 오류가 있었다. 서비스도 컴파일하고 클라이언트 습관이있었습니다. 클라이언트 험의 서비스 참조는 참조를 성공적으로 업데이트하는 것입니다. 삭제를 시도하고 다시 참조를 추가했는데 도움이되지 않았습니다. 문제는 웹 서비스에서 인터페이스가 제거되었습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top