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

Développement Web avec .NET Discussion :

viewstate et gridview


Sujet :

Développement Web avec .NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 194
    Par défaut viewstate et gridview
    Bonjour,

    Je commence à découvrir les viewstate.
    J'ai un gried view qui recupere des données issues d'une bdd. Il y a aussi un radio bouton qui modifie la recherche faite par le sqldataSource.
    Au chargement de la page, le gried view recupere les données et les caches grace au viewstate. Lorsqu'on choisi un choix différent avec le radio buton, cela modifie le grid view. En revenant sur le choix initiale le grid view se change trés vite (grace au view state) mais lorsqu'on retourne au second choix du radio buton, cela met beaucoup de temps (la requete est assez costaud).

    Je voudrais savoir si on peut mettre en cache (avec le viewstate) les données récupérés lors du second choix du radio buton afin de diminuer le temps de chargement.

    Merci.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 194
    Par défaut
    Puis il y a quelque chose que je ne comprends pas.
    Les deux requetes mettent chacune environ deux minutes à etre traité par le SGBD.
    Mais lorsque je charge la page, toute la page est chargée en moins de 10 secondes.

  3. #3
    Membre émérite Avatar de NicoL__
    Homme Profil pro
    Architecte
    Inscrit en
    Janvier 2011
    Messages
    399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Janvier 2011
    Messages : 399
    Par défaut
    le view state ne réalise pas vraiment de cache, mais il y a un cache standart : le cache asp.net
    C'est peut-être ça en fait qui peut-être utilisé à différent niveaux, page ou controle.
    Sur ton sqldatasource tu as peut-être :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    EnableCaching="True"
    CacheDuration="20"

  4. #4
    Membre émérite Avatar de NicoL__
    Homme Profil pro
    Architecte
    Inscrit en
    Janvier 2011
    Messages
    399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Janvier 2011
    Messages : 399
    Par défaut
    Enfin sinon le mieux c'est de tenter d'optimiser la requête : 2min c'est long !

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 194
    Par défaut
    La requete ne peut pas être modifier en fait la bdd ne correspond pas vraiment pour l'usage que l'on veut en faire et on ne pas la modifier. Du coup on a des gros tps pr les requetes (en plus les serveurs sont loin).
    J'ai pas compris c'est quoi le cache duration? C'est le temps au bout duquel le viwstate se vide c'est ca?

  6. #6
    Membre émérite Avatar de NicoL__
    Homme Profil pro
    Architecte
    Inscrit en
    Janvier 2011
    Messages
    399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Janvier 2011
    Messages : 399
    Par défaut
    Oublie de viewState, il sert à synchroniser les modification effectué sur le client et le serveur et entre les actions, par exemple des tris et pagination réalisé sur le gridview.

    Sinon le cache est un concept à part et je ne pense pas qu'il utilise le viewState.
    Effectivement CacheDuration est la durée de vie du cache, le cache peut-être "vidé" de façon programmé aussi sur un action particulière. Pour cela on y accède par une CacheKeyDependency qu'on a attribué au SqlDataSource. Et ultimement si on utilise un sql server on peut utiliser un SqlCacheDependency qui permet de gérer le cache en fonction des changement en BDD.
    http://msdn.microsoft.com/en-us/library/z56y8ksb.aspx

Discussions similaires

  1. Réponses: 2
    Dernier message: 26/11/2014, 17h22
  2. Limite Viewstate et Gridview
    Par Dargos30 dans le forum ASP.NET
    Réponses: 0
    Dernier message: 06/02/2014, 14h14
  3. gridview entierement dynamique et viewstate
    Par topolino dans le forum ASP.NET
    Réponses: 1
    Dernier message: 24/02/2010, 20h30
  4. Gridview dans un userControl viewstate
    Par blackskiz dans le forum ASP.NET
    Réponses: 0
    Dernier message: 25/08/2009, 15h22
  5. [VB.NET] ViewState et UserControl
    Par franculo_caoulene dans le forum ASP.NET
    Réponses: 5
    Dernier message: 20/04/2005, 15h33

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