Domanda

Ho un sito Web con un servizio WCF abilitato Silverlight. Il servizio funziona bene e posso accedere alla pagina WSDL nel browser senza problemi.

Ora sto provando a creare un client in una DLL. Devo creare l'intero client programmaticamente, perché viene chiamato in una DLL, che per qualsiasi motivo (in base alla progettazione?) Non leggerà la sezione ServiceModel dal suo file di configurazione.

Quindi ecco il mio codice:

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)

Ma quando chiamo il metodo svc.CheckIt, ottengo il seguente errore:

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'.."}

Come posso creare correttamente il mio client in modo che questi siano correttamente "quotati" ??
Grazie in anticipo !!!

È stato utile?

Soluzione

Ah --- l'ho trovato. La sezione ServiceModel nel web.config del sito Web è stata impostata su CustomBinding . Modificato in modo che corrispondesse a quello che il client stava inviando e ora funziona magnificamente.

Altri suggerimenti

Ho riscontrato questo stesso problema. Più spettralmente, la mia soluzione era aggiornare il tipo di attacchi che stavo usando. Stavo usando wsHttpBindings invece di basicHttpBindings . Ciò stava causando errori poiché wsHttpBindings utilizza SOAP 1.2 mentre basicHttpBindings utilizza SOAP 1.1 e il servizio che stavo utilizzando SOAP 1.1 richiesto

Ho avuto lo stesso errore. Il servizio era in fase di compilazione, anche l'applicazione del client. Il riferimento al servizio nell'applicazione client stava aggiornando correttamente il riferimento. Ho provato a eliminare e aggiungere nuovamente il riferimento e non è stato utile. Il problema era nell'interfaccia rimossa nel servizio web.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top