Dans mon application ASP.NET en C#, une des pages accède à la base de données et récupère un certain nombre de données à afficher dans une GridView.
Cependant, nous souhaitons inclure dans la grille (pour chaque Row) des informations complémentaires qui sont générées par le biais d'une DLL dans le traitement de l'événement Gridview_RowDataBound.
Il se trouve que la DLL fournit ses données relativement lentement, et que la page tombe souvent en time-out avant que l'affichage dans la grille ait pu se faire.
J'envisage donc d'utiliser un BackGround Worker pour procéder à la génération des données complémentaires en multithread. Toutefois, le fonctionnement du BackGround Worker étant asynchrone, j'ai du mal à comprendre à quel moment (sur quel événement) le background worker doit être lancé, et de quelle façon il peut ensuite mettre à jour la GridView (lorsque son travail est terminé), alors que celle ci est peut-être déjà affichée dans la page ?
Merci de vos conseils et idées sur ce sujet.
Partager