Stockage en session ou pas ?

Résolu
zigxag Messages postés 142 Date d'inscription jeudi 10 février 2005 Statut Membre Dernière intervention 2 octobre 2008 - 21 août 2006 à 10:14
zigxag Messages postés 142 Date d'inscription jeudi 10 février 2005 Statut Membre Dernière intervention 2 octobre 2008 - 21 août 2006 à 14:57
Bonjour !

j'ai une petite question, pour avoir votre avis...
Dans la page 1, je rempli un GridView grace à une DataTable, que je stocke ensuite en session pour pouvoir manipuler la liste sans la recharger à chaque fois. Dans la page 2, idem, mais je rappatrie une liste différente de la page 1, et je stocke la DataTable dans la même variable de session pour ne pas surcharger cette dernière.
Le problème est que si l'utilisateur clique sur le bouton "Precedent" du navigateur Web, il retourne sur la liste de la page 1 en ayant la DataTable de la page 2 en session. Du coup, lorsqu'il y a une manipulation sur la grille de la page 1 à faire, la manipulation se fait sur la DataTable de la page 2...
Pour éviter cela, soit je place les 2 DataTables dans des variables session différentes, mais ca allourdie la session; soit je rappatrie la liste des données de la base à cahque fois, mais ca prend du temps... Quel est la solution la plus propre pour ce genre de cas ?

Merci d'avance pour votre aide !!!

2 réponses

cs_Yopyop Messages postés 586 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 10 février 2010 1
21 août 2006 à 14:46
salut,


Est-ce que cela prend vraiment beaucoup plus de temps de tout recharger depuis la base ?


Si oui, tu peux utiliser 2 variables sessions pour contenir tes données (tout dépend du nombre de données mais également du nombre d'utilisateurs de ton application ainsi que des ressources du serveur).


Autrement, tu peux ajouter une 2ème variable session (par example Session("PAGE_FEEDER")) dans laquelle tu indiques quelle page a rempli la session contenant les données.
Si tu es sur la même page, tu utilises les données session, sinon tu recharges les données (et tu les remets dans la variable session et tu update la session PAGE_FEEDER). De cette manière tu ne fais appel à la base que si ton user a changé de page.

Mais bon, tout dépend de la quantité de données, du nombre de users que tu auras et des ressources du serveur.

yopyop
3
zigxag Messages postés 142 Date d'inscription jeudi 10 février 2005 Statut Membre Dernière intervention 2 octobre 2008 12
21 août 2006 à 14:57
Oh tres bonne idée ! Merci beaucoup !
0
Rejoignez-nous