Ich würde Visual Studio starten, ein Webprojekt erstellen (oder eine Konsolen-App - spielt keine Rolle).
Für .Net Standard:
- Ich würde auf dem Projekt der rechte Maustaste und „Dienstverweis hinzufügen“ aus dem Pick Hinzufügen Kontextmenü.
- Ich würde auf Erweitert klicken und dann auf Dienstreferenz hinzufügen klicken.
- Ich würde den vollständigen Dateipfad der WSDL erhalten und in die Adressleiste einfügen. Feuern Sie dann den Pfeil ab (Go-Taste).
- Wenn beim Laden der Datei ein Fehler auftritt, muss eine fehlerhafte und ungelöste URL vorhanden sein, die die Datei wie unten gezeigt auflösen muss:
Informationen zum Beheben finden Sie in dieser Antwort:
Stackoverflow-Antwort auf: Dienstreferenz für kann nicht erstellt werden WSDL-Datei
Wenn kein Fehler auftritt, sollten Sie einfach den NameSpace festlegen, den Sie für den Zugriff auf den Dienst verwenden möchten. Dieser wird dann für Sie generiert.
Für .Net Core
- Ich würde mit der rechten Maustaste auf das Projekt klicken und Connected Service aus dem Kontextmenü Hinzufügen auswählen.
- Ich würde Microsoft WCF Web Service Reference Provider aus der Liste auswählen.
- Ich würde auf Durchsuchen klicken und sofort die WSDL-Datei auswählen. Den Namespace festlegen und los geht's. Lesen Sie die obige Fehlerbehebungs-URL, wenn Sie auf einen Fehler stoßen.
Jede der oben genannten Methoden generiert einen einfachen, sehr einfachen WCF-Client, den Sie verwenden können. Sie sollten im generierten Code eine "YourservicenameClient" -Klasse finden.
Zu Referenzzwecken befindet sich die generierte cs-Datei in Ihrem Obj / debug (oder release) / XsdGeneratedCode, und Sie finden die DLLs weiterhin im TempPE-Ordner.
Die erstellten Dienste sollten Methoden für jede der im WSDL-Vertrag definierten Methoden haben.
Instanziieren Sie den Client und rufen Sie die Methoden auf, die Sie aufrufen möchten - das ist alles, was es gibt!
YourServiceClient client = new YourServiceClient();
client.SayHello("World!");
Wenn Sie die Remote-URL angeben müssen (nicht die standardmäßig erstellte), können Sie dies einfach im Konstruktor des Proxy-Clients tun:
YourServiceClient client = new YourServiceClient("configName", "remoteURL");
Wo configName
ist der Name des zu verwendenden Endpunkts (Sie werden alle Einstellungen außer der URL verwenden), und dies remoteURL
ist eine Zeichenfolge, die die URL darstellt, zu der eine Verbindung hergestellt werden soll (anstelle der in der Konfiguration enthaltenen).