Es gibt einen WCF-Dienst mit Konfiguration:Berufung WCF-Dienst von VBScript
<services>
<service name="MyService" behaviorConfiguration="MyServiceBehavior">
<endpoint
binding="basicHttpBinding"
contract="IMyService" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8001/MyService" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="MyServiceBehavior">
<serviceMetadata httpGetEnabled="True" />
</behavior>
</serviceBehaviors>
</behaviors>
Dieses Skript soll es nennen:
Option Explicit
Dim soapClient
Dim serviceUri
Dim serviceName
Dim portName
Dim result
serviceUri = "http://localhost:8001/MyService"
serviceName = "MyService"
portName = "BasicHttpBinding_IMyService"
Set soapClient = CreateObject("MSSOAP.soapClient")
soapClient.ClientProperty("ServerHTTPRequest") = True
soapClient.mssoapinit serviceUri & "?WSDL", serviceName, portName
Wenn das Skript ausgeführt wird dieser Fehler angezeigt:
Client: WSDLReader: Analysieren der WSDL-Datei fehlgeschlagen HRESULT = 0 x 8 0009005 - WSDLReader: Initialisierung des Diensts fehlgeschlagen HRESULT = 0 x 80004005 - WSDL-Dienst: Initialisierung des p ort für Service MyService fehlgeschlagen HRESULT = 0x80004005 - WSDLPort: Analysieren der Bindungsinformationen für Port BasicHttpBinding_IMyService fehlgeschlagen HRESULT = 0x80004005 - WSDLPort: eine Operation für Port BasicHttpBinding_IMyService konnte nicht initialisiert werden HRESULT = 0x8000 4005 - WSDLOperation: Die Operation // def: portType [@ name = "IMyService"]/ def: Betrieb [@ name = "MyMethod"] nicht in der type Abschnitt HRESULT gefunden = 0x80004005
Was nicht in Ordnung ist? Bitte, helfen Sie.
Edit:
Danke, Cheeso, für die Antwort. Das Problem mit der MSSOAP scheint zu sein, dass alle xsd-Schemas in die generierte WSDL-Datei eingebunden werden müssen. WCF tut es nicht standardmäßig.
Wenn Sie die XSDs in der WSDL verwenden möchten, können Sie den WCF-Dienst so ändern, dass er "flattert". http://www.bing.com/search?q=Wcf+flatten+wsdl Wenn Sie keine Kontrolle über das WCF-Ende haben, können Sie immer noch eine WSDL erstellen, die monolithisch ist und funktionieren sollte. Aber es gibt andere, ernstere Probleme mit MSSOAP. – Cheeso