IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

WebService et préchargement de données


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2005
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2005
    Messages : 482
    Points : 625
    Points
    625
    Par défaut WebService et préchargement de données
    Bonjour,
    je suis en train de créer mon premier WebService.

    Dans le principe je pensais faire ceci :
    - du coté de ISS mon WebService récupère et traite des données depuis une base SQL, en fait un DataSet et le garde en mémoire. Et cela, dés le démarrage de ISS.
    - ensuite, une application cliente (web ou win)Form exécute la méthode "RecupDonnees" du service qui renvoie ce dataset.

    Le but étant de précharger les données coté serveur afin que du coté client(S) il n'y ait plus de traitement à faire : il(S) récupère(NT) juste le résultat RAPIDEMENT ! <= mot en majuscule, gras, souligné et avec point d'exclamation (!).

    Mais je pense que je fais fausse route :
    en effet, le constructeur du webservice qui crée la connexion SQL, récupère et traite les données pour les mettre dans un DataSet... ne s’exécute pas au Start du site web mais au moment au je l'instancie coté client...
    Du coup ça perd tout intérêt

    Comment puis-je faire pour que ce DataSet soit déjà calculé quand j'instancie mon webservice coté client ?¿

    Merci
    "Essayer est le premier pas vers l'Echec !" (Homer Simpson)

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2005
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2005
    Messages : 482
    Points : 625
    Points
    625
    Par défaut
    Bon, ben je me viens en aide tout seul alors :p

    je ne connaissais pas l'existence (je répète que je suis débutant en Web...) du fichier Global.asax.
    J'ai donc ajouté ce fichier dans mon WebService et ai pu utiliser l'event "Application_Start".
    Dans cet event j'ai instancié mon WebService et ai exécuté ma fonction de récupération de données.
    J'ai ensuite stocké ce DataSet dans la variable Application["monDataSet"].

    Je n'ai ensuite plus eu qu'à récupérer ce DataSet de Application["monDataSet"] depuis ma WebMethod.
    "Essayer est le premier pas vers l'Echec !" (Homer Simpson)

  3. #3
    Membre expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Points : 3 173
    Points
    3 173
    Par défaut
    Citation Envoyé par Themacleod1980 Voir le message
    Bon, ben je me viens en aide tout seul alors :p

    je ne connaissais pas l'existence (je répète que je suis débutant en Web...) du fichier Global.asax.
    J'ai donc ajouté ce fichier dans mon WebService et ai pu utiliser l'event "Application_Start".
    Dans cet event j'ai instancié mon WebService et ai exécuté ma fonction de récupération de données.
    J'ai ensuite stocké ce DataSet dans la variable Application["monDataSet"].

    Je n'ai ensuite plus eu qu'à récupérer ce DataSet de Application["monDataSet"] depuis ma WebMethod.
    C'est bien beau mais du coups vous êtes en OFFLINE, que ce passe t'il si vos données changent en base? le WS devient incohérent, comme il est hébergé sur un IIS vous ne chargerez qu'une fois les données.

    Prévoyez un rafraîchissement des données?
    Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
    MCTS Database Development
    MCTS Database Administration

  4. #4
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2005
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2005
    Messages : 482
    Points : 625
    Points
    625
    Par défaut
    oui, je compte mettre un Timer pour rafraichir les données toutes les X heures.
    Ce sont des données qui changent peu (rapports crystal report affichant les articles que nous vendons).
    Je pense aussi mettre un bouton "rafraichir" court-circuitant le Timer depuis la page web qui exploitera le service.

    J'ai aussi pensé à mettre un Lock/Unlock sur la variable Application pour éviter les données partielles quand il est en train de se mettre à jour.
    "Essayer est le premier pas vers l'Echec !" (Homer Simpson)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Préchargement des données
    Par bossun dans le forum Développement de jobs
    Réponses: 1
    Dernier message: 07/12/2011, 16h53
  2. Réponses: 4
    Dernier message: 30/09/2010, 22h58
  3. WebService en source de donnée BO
    Par Zeusviper dans le forum Administration-Migration
    Réponses: 3
    Dernier message: 28/09/2010, 10h46
  4. Webservice et base de données distantes sécurisées
    Par aymenroma dans le forum Développement de jobs
    Réponses: 5
    Dernier message: 03/06/2010, 09h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo