Hallo Leute
Nachdem mein Webservice funktioniert habe ich ein Problem , wie ich die Methoden richtig aufrufe:
Die Methode im Webservice hat eine List<string> als Rückgabewert
[WebMethod]
public List<string> KListe()...
Ich habe den Diensteverweis in meinem Programm hinzugefügt ,
using AppTest.ReferenceService1
Dann finde ich eine WebService1SoapClient
also
WebService1SoapClient MeinService = new WebServiceSoapClient();
Dort finde ich MeinService.KListeAsync() . Doch wie weise ich nun die Rückgabe einer Liste zu ?
Danke und Gruß Chazon
Hallo Chazon,
Entweder nimmst du die Methode die nicht asynchron läuft also ohne async am ende oder du benutzt die async Methode welche auch klar die bessere Wahl ist.
Bei dieser Async Methode kommt die neue async await Symptomatik zu tragen.
Asynchrone Programmierung mit Async und Await (C# und Visual Basic)
Viele Grüße
Lars
Danke für die Antwort,
Ich würde ja gerne die Async - Methode nutzen
nur weis ich im Moment nicht wie ich die Rückgabe dieser Methode
in ein List<string> übernehmen kann .
[WebMethod]
public List<string> KListe(string k_id)...
im Programm:
List<string> kListe = new List<string>();
kListe = MeinService.KListeAsync("1"); ???
kommt wirklich ein List zurück oder evtl ein Array
Ich erhalte die Fehlermeldung
Fehlermeldung:
Fehler 7 Argument '1': Konvertierung von 'void' in 'System.Collections.Generic.IEnumerable<string>' nicht möglich.
Normalerweise würdest bei den async Methoden nicht List<T> sondern eher Task<List<T>> zurück bekommen,
Jedoch bei dir scheint es eher so zu sein, dass du gar nichts also void zurückbekommst, aufgrund der Informationen die dir deine IDE anzeigt, solltest du darauf aber auch selber kommen können.
Viele Grüße
Lars
Also , ich stehe im Moment etwas daneben ?(
Also meinen Webservice habe ich getestet und er liefert im Browser
die gewünschten Ergebnisse
Ich versuche nun wie in diversen Tuts beschrieben den
Webservice zu konsumieren was aber nicht funktioniert.
Ich habe einen Dienstverweis hinzugefügt
Dort wird unter Dienste
WebService1Soap
WebService1HttpGet
WebService1HttpPost
(Ich sollte vielleicht erwähnen ,dass der Service remote läuft)
Unter Vorgänge werden bei allen die entsprechenden Methoden angezeigt
Danach komme ich dann irgendwie nicht weiter (zumindest nicht so dass es verstehe).
Wie alt sind die Tutorials?
Gerade im .NET 4.5 hat sich hier mit async/await viel geändert.
Du musst a) die Grundlagen von SOAP verstehen (wobei SOAP heute eigentlich veraltet ist bzw. viele das als veraltet sehen und man REST eher nimmt, sofern kein 1:1 Binding erforderlich ist) und b) verstehen was async/await ist und wie man damit korrekt umgeht.
Mit "Service hinzufügen" und gar nicht verstehen, wie man Services korrekt verwendet, ist es halt nicht getan.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Vielen Dank , das sieht gut aus.
Bin damit wohl eine Weile beschäftigt
Danke und Gruß
chazon