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 :

Bdd ou serialisation


Sujet :

ASP.NET

  1. #1
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut Bdd ou serialisation
    Bonjour,

    Un questionnement recurent me porte a demander votre avis.
    Souvent dans une page, j'alimente une entitée (objet metier), et lorsque je clique sur un bouton par exemple, je dois recuperer des infos concernant cette entité.

    Est il preferable d'appeler à nouveau une methode BLL qui appelera la DAL pour recuperer a nouveau les infos ou est il preferable de mettre l'entité dans le viewstate ?

    Merci pour vos conseils

  2. #2
    Membre chevronné
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    288
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 288
    Par défaut
    Il existe une 3ème possibilité qui constiterait à mettre en cache tes donnnées au niveau de ta BLL, comme ca tu prend toujours le même chemin, mais suivant le fait que ta donnée est en cache ou non, il effectue la requête vers la DAL ou te renvoit directement le résultat :

    http://msdn.microsoft.com/fr-fr/libr...k6(VS.80).aspx

  3. #3
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    Comment regler le cache pour qu'il n'est pas une duree de vie trop longue ou trop courte ?

  4. #4
    Membre chevronné
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    288
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 288
    Par défaut
    Dans la surchage de la méthode Insert de l'objet Cache, tu peux définir la durée de mise en cache d'un objet

    http://msdn.microsoft.com/fr-fr/libr...61(VS.80).aspx (expliqué au milieu de la page) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Cache.Insert("CacheItem6", "Cached Item 6",
        null, DateTime.Now.AddMinutes(1d), 
        System.Web.Caching.Cache.NoSlidingExpiration);

  5. #5
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    j'ai lu la doc, tu peux effectivement gerer la duree, mais je ne peux prevoir la duree à mettre !!! je ne sais pas qd l'utilisateur va s'en servir ou non, et c une page ou les donnees se rafraichissent souvent.

  6. #6
    Membre chevronné
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    288
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 288
    Par défaut
    Oui c'est sur, tu ne peux pas prévoir quand est ce que l'utilisateur va avoir besoin de ta données.

    Ce que j'avais réalisé une fois dans une application web, est que j'avais défini une durée de cache de 5 minutes je crois, mais par contre je reinitialisait le cache d'un groupe de données liés si j'effectuais une opération sur celles-ci (Insert / Update / delete)

    Par exemple, si tu récupère une liste d'utilisateurs à partir de ta base de données, tu peux conserver 5 minutes ta liste en cache sauf dans le cas où quelqu'un :
    - S'incrit
    - Met à jour son Profil
    - Qu'un Admin supprime son profil

    dans ce cas, la liste mise en cache doit être reinitialisé et ainsi de suite.

  7. #7
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    ok je vais essayer ta solution.

    Par contre c'est une mauvaise chose de serialiser une entité dans le viewstate ?

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2004
    Messages : 28
    Par défaut
    Bonjour

    j'ai lu avec intérêt cet article et en tant que débutant je me pose une question :
    quelles sont les différences entre l'objet Cache et l'objet Session.

    Faut-il utiliser plus l'un ou l'autre suivant des traitements spécifiques ?

    Merci de vos éclaircissements.

    Cyril

  9. #9
    Membre chevronné
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    288
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 288
    Par défaut
    @Spoonnny :

    L'objet Cache et l'objet Session sont 2 choses bien différentes :

    L'objet Cache permet de mettre des données (objet, liste, ressources ...) en mémoire afin que leurs accès soit plus rapide (cela evite par exemple de faire un requête à chaque demande de l'utilisateur alors que la données est déjà stockée en mémoire). Cependant, ces données mises en mémoire sont disponible pour tous les utilisateurs utilisant l'application Web

    Alors que l'objet Session permet lui aussi de mettre des objets / listes ect en mémoire, mais celle l'utilisateur attaché à la session pourra consulter/modifier/supprimer ces données.

    La session permet donc de garder en mémoire des données propres à chaque utilisateur, alors que le cache permet de garder en mémoire des informations souvent consultées et consultable par tous les utilisateurs.

    J'espère avoir répondu à ta question

    A+

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2004
    Messages : 28
    Par défaut
    Parfaite réponse pour moi.
    Merci de ces éclaircissements.


    Citation Envoyé par DroP Voir le message
    @Spoonnny :

    L'objet Cache et l'objet Session sont 2 choses bien différentes :

    L'objet Cache permet de mettre des données (objet, liste, ressources ...) en mémoire afin que leurs accès soit plus rapide (cela evite par exemple de faire un requête à chaque demande de l'utilisateur alors que la données est déjà stockée en mémoire). Cependant, ces données mises en mémoire sont disponible pour tous les utilisateurs utilisant l'application Web

    Alors que l'objet Session permet lui aussi de mettre des objets / listes ect en mémoire, mais celle l'utilisateur attaché à la session pourra consulter/modifier/supprimer ces données.

    La session permet donc de garder en mémoire des données propres à chaque utilisateur, alors que le cache permet de garder en mémoire des informations souvent consultées et consultable par tous les utilisateurs.

    J'espère avoir répondu à ta question

    A+

  11. #11
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    ok je vais essayer ta solution.

    Par contre c'est une mauvaise chose de serialiser une entité dans le viewstate ?

  12. #12
    Membre chevronné
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    288
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 288
    Par défaut
    Par contre c'est une mauvaise chose de serialiser une entité dans le viewstate ?
    Je n'ai jamais essayé donc je ne peux pas trop de répondre là dessus.

  13. #13
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    J'ai serialisé mon entities afin de le mettre ds le viewstate est tout fonctionne bien. Si qq un pouvez me dire si c une bonne pratique ou non !!!!

    Merci

Discussions similaires

  1. Serialiser en BDD commune
    Par thefutureisnow dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 02/06/2011, 10h44
  2. Donnees serialises dans la bdd
    Par keaton7 dans le forum Méthodes
    Réponses: 5
    Dernier message: 12/12/2008, 17h13
  3. connection a une BDD MySql
    Par delire8 dans le forum MFC
    Réponses: 7
    Dernier message: 19/06/2002, 18h18
  4. [BDD] Enregistrer le résultat d'une requête
    Par Mowgly dans le forum C++Builder
    Réponses: 5
    Dernier message: 19/06/2002, 15h26
  5. Probleme de filtre dans bdd
    Par scorpiwolf dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/06/2002, 10h43

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