Hej!Asynkrona webservices anrop.
Jag har stött på ett litet problem som jag inte riktigt hittat någon lösning på.
Det jag vill är att anropa en webservices 3 gånger parallellt, jag gör detta med hjälp av metoden xxxAsync() och lyssnar sedan på eventet xxxCompleted. Detta fungerar bra och gör även att jag inte använder upp fler worker_threads utan använder mig av io_threads istället.
Mitt problem är nu att jag har en struktur som gör att jag vill kunna anropa dessa 3 webservices, vänta på svar från alla 3 och sedan returnera svaret från alla 3 samtidigt. Alltså så här:
min aspx-sida anropar en metod i processmanager och förväntar sig en List<Result> tillbaka, min metod i processmanager anropar webservicen 3 gånger asyncront och skall sedan vänta tills resultatet från webservicerna kommer tillbaka (givetviss till en annan metod, där denna metod stoppar in resultatet i en "public" List<Result> variable) när alla resultaten är klara så skall metoden i processmanagern lämna tillbaka listan med resultatet till min aspx-sida.
Jag har sett exempel där man använder sig av IAsyncResult för att lösa detta, men om man skapar en webservice inne i VS2005 till ett classlibrary så genereras inte Beginxxx och Endxxx metoderna utan endast xxxAsyn() så det kan jag inte använda mig av.
Någon som har ett förslag...
- M