Bonjour,
en développement .net, est-il possible de connaître l'origine de l'affichage de la page ? Comment savoir si ma page est affichée "pour la première fois" ou bien provient de l'historique de navigation du client ?
Merci
Bonjour,
en développement .net, est-il possible de connaître l'origine de l'affichage de la page ? Comment savoir si ma page est affichée "pour la première fois" ou bien provient de l'historique de navigation du client ?
Merci
Il est possible d'avoir la page précedente :
http://msdn.microsoft.com/fr-fr/libr...lreferrer.aspx .
Maintenant avoir tout l'historique en asp je sais pas mais il est toujours possible de l'avoir en javascript et l'objet history il me semble.
Tu peux faire quelque chose d'assez simple en stockant en variable de session un objet avec un flag pour chaque page mis à "true" au premièr appel d'une page. Avant de positionner l'indicateur tu vérifie sa présence et tu as la réponse à ta question.
Un truc du style un dictionnaire <string, bool> où la clef est le nom de la page ferait parfaitement l'affaire.
Encore plus simple, une List<string> de noms de pages, où les entrées sont créés au premier chargement. Si l'entrée n'existe pas dans la liste, la page n'a jamais été chargée. (mais le dico sera plus rapide si tu as beaucoup de pages).
Tu mets ton dico ou ta liste en Session et terminé.
Je ne suis pas du tout spécialiste des IHM web mais il me semble qu'un retour arrière dans l'historique est un job du navigateur n'entrainant pas d'appel au serveur non ? dans ce cas, aucune raison de passer par le Page_Load.
Le problème est que tu as demandé quelque chose sans préciser très clairement ton besoin foncitionnel; de ce fait les réponses qu'on peut te fournir ne sont pas forcément utile même si elles sont techniquement justes.
Ici, notamment, je pensais que tu voulais une détection coté serveur (le client fait un "back" et recharche sa page) pas coté client (où de toute manière , si il fait un back, la page n'est pas rechargé et le serveur n'est pas concerné).
Partager