2010-07-22 3 views
1

J'ai un service de chargement multithread lancé tous les jours. Je voudrais garder le cap du pourcentage de progression du chargeur. Je pensais que ce serait bien d'avoir une colonne de mise à jour sur une table de base de données qui écrit le% Progress. Cependant, j'ai appris que ce n'est peut-être pas une bonne idée car il y aura un gros frais généraux (5k mises à jour par minute).Comment utiliser un WebServices pour afficher l'indication de progression?

J'ai été informé que l'indication de progression est mieux exposée en tant que service Web. Est-ce que quelqu'un peut m'expliquer comment je pourrais implémenter ceci? Quel sera le résultat du webservice - Données XML telles que '21 .5% Complete 'ou autre? Comment une application cliente déterminerait-elle la progression? Je suppose que le service Web devrait exposer une sorte d'événement de notification qu'une application cliente implémenterait et écouterait pour se mettre à jour?

+0

Il peut être WCF Duplex (avec rappel aux clients) Communication par exemple – garik

Répondre

0

Nous avons un service web aysnc, qui exécute le job long, nous utilisons une méthode secondaire sur le webservice pour interroger la base de données et renvoyer la valeur à l'interface utilisateur afin que plusieurs jobs puissent s'exécuter.

Pas élégant mais cela fonctionne.

Vive

Iain

-1

keep it simple.

Créez un service Web avec deux méthodes, updateProgress et getProgress. tout le service Web doit stocker le progrès dans une variable statique.

Votre service de chargement publie juste les mises à jour et vos sondages de clients pour l'avancement et quel que soit le taux que vous considérez acceptable.

Questions connexes