permet de dire que je fais appel une méthode de service Web que je ne contrôle pas. Cette méthode prend beaucoup de temps à s'exécuter et quiconque a développé le service Web n'a pas pensé à inclure une version asynchrone.Faire une méthode Webservice asynchrone en C#/Winforms
Quelle est la meilleure façon de créer une enveloppe asynchrone pour un tel procédé en C#/WinForms?
Au moment où je me sers un ThreadPool pour exécuter la méthode webservice puis appeler un événement lorsque le webservice se termine. Quelque chose comme ça.
DoWorkAsync() {
Webservice.LongMethod()
WorkCompleteEvent()
}
Cependant, cela ne semble pas idéal. Par exemple, si j'essaie de modifier les contrôles de formulaire à partir du gestionnaire d'événements, j'obtiens un avertissement pour ne pas le faire à partir d'un thread différent, etc.
Quelqu'un a-t-il d'autres suggestions pour résoudre ce problème?