Mit svcutil können Sie Schnittstellen und Klassen (Datenverträge) aus der WSDL erstellen.
svcutil your.wsdl (or svcutil your.wsdl /l:vb if you want Visual Basic)
Dadurch wird eine Datei mit dem Namen "your.cs" in C # (oder "your.vb" in VB.NET) erstellt, die alle erforderlichen Elemente enthält.
Jetzt müssen Sie eine Klasse "MyService" erstellen, die die Dienstschnittstelle (IServiceInterface) - oder die verschiedenen Dienstschnittstellen - implementiert. Dies ist Ihre Serverinstanz.
Jetzt hilft eine Klasse für sich noch nicht wirklich - Sie müssen den Dienst irgendwo hosten. Sie müssen entweder Ihre eigene ServiceHost-Instanz erstellen, die den Dienst hostet, Endpunkte konfigurieren usw., oder Sie können Ihren Dienst in IIS hosten.
Es gibt gute Ressourcen, wenn Sie wissen, wonach Sie suchen müssen. Versuchen Sie "Contract First" und WCF. oder "WSDL First" und WCF.
Hier ist eine Auswahl:
quelle
ReplyAction="*"
. Es scheint, dass Sie das loswerden müssen. Es gibt eine Reihe von Erklärungen aus diesem Kommentar, die die Begründung geben, aber ich habe sie nicht gelesen.Verwenden Sie svcutil.exe mit dem
/sc
Schalter, um die WCF-Verträge zu generieren. Dadurch wird eine Codedatei erstellt, die Sie Ihrem Projekt hinzufügen können. Es enthält alle Schnittstellen und Datentypen, die Sie zum Erstellen Ihres Dienstes benötigen. Ändern Sie den Ausgabeort mit dem/o
Schalter, oder Sie finden die Datei in dem Ordner, in dem Sie svcutil.exe ausgeführt haben. Die Standardsprache ist C #, aber ich denke (ich habe es noch nie versucht), dass Sie dies mit ändern können sollten/l:vb
.Wenn Ihre WSDL unterstützende XSD-Dateien enthält, übergeben Sie diese als Argumente nach der WSDL.
Erstellen Sie dann eine neue Klasse, die Ihr Service ist, und implementieren Sie die soeben erstellte Vertragsschnittstelle.
quelle
Sie können svcutil.exe verwenden, um Clientcode zu generieren. Dies würde die Definition des Servicevertrags und aller erforderlichen Datenverträge und Fehlerverträge einschließen.
Löschen Sie dann einfach den Clientcode: Klassen, die die Serviceverträge implementieren. Sie müssen sie dann selbst in Ihrem Dienst implementieren.
quelle
Mit dem Tool "Dienstreferenz hinzufügen" in Visual Studio können Sie die Adresse wie folgt einfügen:
Und es wird richtig geladen.
quelle