Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Fil d'Ariane

2 réponses
Avatar
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 ?

2 réponses

Avatar
Patrice Manac'h
Bonjour,

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

Cdt,

P. Manac'h
MCS France

"News" a écrit dans le message de
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 ?



Avatar
OD
> 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