2009-09-27 2 views
9

Ich muss einen WCF-Dienst basierend auf einer (vorzugsweise einzigen) WSDL-Datei konsumieren.Wie kann ich einen WCF-Dienst mithilfe einer lokalen WSDL-Datei verwenden?

Die Umgebung ist VS-2008 (SP1), und ich werde ein benutzerdefiniertes "Add Service Reference" -Makro verwenden, um eine Fehlerbehandlung Proxy zu generieren. Ich möchte dies tun können, indem ich eine WSDL-Datei zur Verfügung stelle, die ich vom Dienstanbieter bekomme (ich möchte keine Host-URL angeben).

Wie kann das gemacht werden?

Antwort

19

Sicher - Sie können den Pfad + Dateinamen für die WSDL kopieren und fügen Sie das in das "Add Service Reference" -Dialogfeld in Visual Studio (oder geben Sie einfach den vollständigen Pfad + WSDL-Dateiname).

enter image description here

Alternativ können Sie das svcutil.exe Befehlszeilenprogramm verwenden, um die WSDL-Datei auf Ihre Client-Proxy-Klasse zu konvertieren.

+0

Ich habe versucht, eine Service-Referenz von einem lokalen WSDL, eine, die mehrere Verträge hat, und alles, was ich bekam, war eine leere referenz.cs-Datei (es hatte die Code-Gen Bemerkungen, aber das war es). Irgendeine Idee warum? Danke, Assaf. –

+0

das würde wahrscheinlich eine ungültige WSDL anzeigen - oder es kann nicht die mehreren Dienste in der gleichen WSDL behandeln - nicht 100% sicher –

+0

Geez! Warum kann Microsoft keinen geöffneten Dateidialog hinzufügen? Zumindest lanel das Feld "Adresse oder Dateipfad:" –

Verwandte Themen