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

Silverlight Discussion :

Gestion de couleurs en fonctions de données en base de données


Sujet :

Silverlight

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 44
    Par défaut Gestion de couleurs en fonctions de données en base de données
    Bonjour,

    Sur une application SilverLight 3 avec un serveur SQL server 2008 Express,
    je souhaite gérer des couleurs dans un tableau, qui est rafraichi toutes les secondes, en fonction de données dans une base de données SQL Server.
    Les couleurs doivent changer en fonction de la date et de l’heure de l’insertion ou de la modification des données.

    Exemple :
    • 1 couleur qui apparait pendant un certain temps lorsque c’est une nouvelle donnée. (5 secondes a chaque insertion / modification)

    • 1 couleur qui apparait lorsque la date et l’heure de la nouvelle donnée est < à un certain temps. (1 heure après insertion / modification)


    Je pensais utiliser des déclencheurs SQL à l’insertion et à la modification de ma table pour insérer la date et l’heure du serveur (GetUtcDate()) dans un champ.
    J’ajoute une fonction SQL qui attend en paramètre le champ DateHeure, et le compare à l’heure courante.
    Celle-ci ressort la valeur 1 selon s’il s’agit d’une ligne de moins de 5 secondes, la valeur 2 de moins d’une heure, la valeur 3 pour les autres cas.
    Ensuite dans mon interface selon la valeur du champ « Etat » (1, 2 ou 3) , j’ajoute la couleur correspondante.

    Est-ce que cette méthode vous parait optimisée ? ou existe t-il des méthodes plus simple pour comparer ces dates ?

    Je suis passé par des méthodes SQL car j'ai rencontré des décallages entre les heures des machines clients et celle du serveur.
    J'ai donc donc tout centraliser au niveau du serveur SQL.


    Merci d’avance pour votre réponse

  2. #2
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Personellement je suis pour sortir toute la logique de la base de données.
    Je mettrais le "timestampage" plutot côté dans la couche DAO sur le serveur des webservices.

  3. #3
    Membre éclairé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2009
    Messages
    966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2009
    Messages : 966
    Par défaut
    Pourquoi ne pas gérer cela coté silverligth plutôt ?
    Il suffit de remonter une information de temps et de gerer la couleur en fonction.

  4. #4
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Il a dit qu'il pouvait y'avoir un décalage de temps entre les horloges clientes et serveur. Un élément pourrait être classé en vert alors qu'il est rouge.

  5. #5
    Membre éclairé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2009
    Messages
    966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2009
    Messages : 966
    Par défaut
    Pourquoi comparer le temps avec la machine local ?

    tu peut aussi renvoyer l'heure courante du serveur au client et de comparer ensuite des dates.

    même si idéalement il serrai plus logique de la faire coté web service. (meilleurs performance sans doute)

  6. #6
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Oui c'est ce que je suggérais (peut être n'étais-je pas assez clair).

Discussions similaires

  1. fonction include dans une base de donnée
    Par Freega dans le forum Langage
    Réponses: 1
    Dernier message: 13/09/2010, 18h33
  2. Réponses: 1
    Dernier message: 21/07/2009, 11h51
  3. Base de données sans base de données
    Par Zenklys dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 15/09/2008, 13h13
  4. Réponses: 10
    Dernier message: 10/02/2006, 14h23
  5. Réponses: 3
    Dernier message: 22/12/2005, 11h20

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