Ich bin neu in .NET Welt, muss jedoch VStudio C# 2010 (.NET 4.0) verwenden, um einen Client zu erstellen, der Daten von einem Webdienst in SOAP Xml-Modus anfordert. Ich habe hier nach Antworten gesucht, bin aber noch mehr verwirrt. MSDN sagt, dass "Erstellen von XML-Webdienstclients" für .NET 4.0 veraltet ist, d. H. WSDL ist ein Vermächtnis. Verwenden Sie stattdessen "WCF", sagen sie. In WCF ging ich verloren - zu viel und zu vage. Es muss einfacher sein als ... Und alle Beispiele, die ich im Web finden konnte - sie alle verwenden WSDL, "das Vermächtnis".SOAP XML-Client - mit Visual Studio 2010 C# - wie?
Hier sind die Definitionen des Dienstes i zu verwenden, um benötigen, um die Daten aus dem Web-Service zu erhalten:
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>
So, Was ist der richtige oder zumindest logischste Weg, diesen einfachen Client zu bauen? Welche Tools/Bibliotheken/Methoden würden Sie Neulingen vorschlagen (unter der Annahme, dass VS 2010 C#, .NET 4.0-Umgebung)?
FYI, was „Legacy“ ist die Schaffung ASMX Web Services und mit "Add Web Reference". Wie von marc_s vorgeschlagen, sollten Sie "Add Service Reference" verwenden, was gut funktionieren sollte. –