Fil d'Ariane

Le
News
Bonjour,

Comment gérer un fil d'Ariane ? En particulier :

1) si une page peut-être appelée depuis plusieurs autres pages du site ?
Exemple : une fiche article, une fiche utilisateur ou en core une fiche
client

2) si les utilisateurs du site font usage du bouton "Retour" (history.back()
en javascript) ? Ou encore si ces utilisateurs "sautent" directement à
n'importe quelle page du site déjà visitée (via l'historique? ou via un lien
de leurs favoris?)

Merci bien !

PS : il existe peut-être qqch "tout fait" et propre pour ASP.NET 2 ?
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Patrice Manac'h
Le #12145061
Bonjour,

de fait, regardez dans les contrôles de navigation dans la toolbox.

Cdt,

P. Manac'h
MCS France

"News" news:4642ec1b$0$18590$
Bonjour,

Comment gérer un fil d'Ariane ? En particulier :

1) si une page peut-être appelée depuis plusieurs autres pages du site ?
Exemple : une fiche article, une fiche utilisateur ou en core une fiche
client...

2) si les utilisateurs du site font usage du bouton "Retour"
(history.back() en javascript) ? Ou encore si ces utilisateurs "sautent"
directement à n'importe quelle page du site déjà visitée (via
l'historique? ou via un lien de leurs favoris?)

Merci bien !

PS : il existe peut-être qqch "tout fait" et propre pour ASP.NET 2 ?



OD
Le #12144941
> Comment gérer un fil d'Ariane ? En particulier :



il existe certainement d'autres façons de faire, mais lorsqu'un les
pages d'un site réclament d'être visitées dans un ordre particulier
(retour impossible, saut en plein milieu d'une "séquence de pages" non
autorisés, etc), la solution la plus simple que j'utilise c'est un bête
tableau placé dans la session de l'utilisateur..
Quand une page est visitée elle commence par appeler une classe métier
qui vérifier qu'elle peut être appelée (en appliquant les règles
propres à l'appli, en s'appuyant sur le fameux tableau en session).
si la page ne peut pas être appelée, elle redirige vers la bonne (ça
dépend aussi des règles métier en général).
Enfin, si la page peut être appelée elle s'ajoute dans le tableau en
session.
Ce tableau contient tout ce dont l'appli à besoin pour décider si un
appel est autorisé ou non.
Le plus basique c'est un List<int> qui enregistre le numéro (fixé par
constante) de la page appelée. Comme çà on a la liste et l'ordre.
Bien entendu un code integer par page on peut trouver mieux, c'est
juste pour illustrer le propos et parce qu'une liste d'integer ça prend
pas trop de place dans la session.
Tu peux enregistrer des instances d'une classe (ou d'un struct plutôt)
qui contient d'autres infos : date/heure de passage dans la page,
typeof de la page (plutôt qu'un code integer), etc. Faut y aller
doucement malgré tout (les sessions mangent la mémoire du serveur...).

bref voila une soluce possible qui a l'avantage d'être simple à
comprendre et à coder :-)

--


OD___
www.e-naxos.com
Publicité
Poster une réponse
Anonyme