SOAP-xml-client mithilfe von Visual Studio 2010 c# - wie?
Ich bin neu zu .NET-Welt, die noch zu verwenden VStudio C# 2010 (.NET 4.0) zu erzeugen, um ein client fordert Daten von einem web-service im SOAP-Xml-Mode. Ich habe gesucht, hier für die Antworten aber das verwirrt noch mehr. MSDN sagt, dass "Building XML Web Service-Clients" ist Vermächtnis .NET 4.0, d.h. die WSDL ist legacy. Verwenden Sie "WCF" statt, sagen Sie.
In der WCF-ich habe verloren - zu viel und zu vage. Es muss einfacher werden, dann...
Und alle Beispiele die ich im Netz finden konnte - Sie alle nutzen die WSDL, "das Vermächtnis".
Hier sind die Definitionen der service, den ich nutzen müssen, um die Daten aus der web-service:
Anfrage:
POST /catalog.asmx HTTP/1.1
Host: www.somewebsite.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://www.somewebsite.com/KeywordSearch"
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<KeywordSearch xmlns="https://www.somewebsite.com/">
<searchTerm>string</searchTerm>
<resultsReturned>int</resultsReturned>
</KeywordSearch>
</soap:Body>
</soap:Envelope>
Antwort:
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
...some stuff...
</soap:Body>
</soap:Envelope>
Also, was ist die richtige, oder zumindest die meisten logischen Weise zu bauen dieses einfachen client? Welche Werkzeuge/Bibliotheken/Methoden würden Sie vorschlagen, um newbie (vorausgesetzt, VS 2010 C#, .NET 4.0-Umgebung)?
InformationsquelleAutor rita | 2010-12-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie eine WSDL/XSD zu beschreiben, service haben, oder wenn Sie navigieren können, um eine URL zu packen, die Metadaten, dann WCF mit
basicHttpBinding
würde wahrscheinlich Ihre beste Wette. WSDL ist definitiv nicht "legacy" - wenn etwas Erbe, dann ist es ASP.NET/ASMX webservices.Angesichts eines WSDL/XSD-oder ein URL, wo Sie eine Verbindung herstellen können, tun Sie einfach eine
Add Service Reference
innerhalb von Visual Studio, und Sie sollten ausgeführt werden indem Sie mit Ihrer WCF-Dienst in kürzester Zeit - Vertrauen Sie mir! Sie nicht wissen müssen, dass alle von der WCF nur zu nennen eine einfache SOAP-web-service.... auch mit WCF 4.0, viele Dinge - vor allem die Konfiguration wurde deutlich verbessert und vereinfacht.Als für Findmittel: es gibt die MSDN Developer Center WCF, die alles hat, von Anfänger-tutorials, Artikel und Beispiel-code.
Schauen Sie sich auch das screen-cast-Bibliothek bis auf MSDN für einige wirklich nützliche, 10-15 Minuten Blöcken von Informationen über jedes Thema im Zusammenhang mit WCF, die Sie interessieren könnten.
funktioniert Super! Danke!
Sehen! WCF ist nicht, dass big scary monster, nachdem alle 😉 einfach Nur lernen, es bit für bit, so viel, wie Sie brauchen, gerade jetzt - und es beginnt alles Sinn zu machen 🙂
InformationsquelleAutor marc_s