Application_Error et MasterPage

zigxag Messages postés 142 Date d'inscription jeudi 10 février 2005 Statut Membre Dernière intervention 2 octobre 2008 - 12 janv. 2006 à 11:50
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 - 13 janv. 2006 à 09:10
Bonjour !
je sollicite votre aide car je me pose un probleme:
A partir de Application_Error du global.asax, je voudrais manipuler un label se trouvant sur la master page pour pouvoir afficher l'erreur à l'utilisateur... Or, je n'arrive pas à avoir l'objet Master. Savez-vous s'il est tout de même possible de l'avoir ?
A voir également:

7 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
12 janv. 2006 à 14:12
Bonjour,

non c'est impossible le global.asax est propre à l'application pas à l'utilisateur ...

pour afficher l'erreur il suffit simplement de t'abonnner à l'evenement Error de l'objet page dans ta master ... :)


<HR>
Cyril - MVS - MCP ASP
0
zigxag Messages postés 142 Date d'inscription jeudi 10 février 2005 Statut Membre Dernière intervention 2 octobre 2008 12
12 janv. 2006 à 14:30
Merci pour ta réponse !...mais ca ne marche pas :(
Dans le page_Load de la Master, j'ai écrit ce code afin de m'abonner aux erreurs, comme tu m'as conseillé:
this. Error +=
new
EventHandler(ManageError);

Mais lorsqu'une erreur de type "Exception unhandled" est effectivement levée, je ne rentre pas dans la fonction ManageError()... saurais-tu pourquoi ?
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
12 janv. 2006 à 17:58
C'est possible que l'exception soit propre à l'application ou alors avant le page_load

sinon tu peux faire dans le application_error un response.redirect("pageError.aspx") :)


<HR>
Cyril - MVS - MCP ASP
0
zigxag Messages postés 142 Date d'inscription jeudi 10 février 2005 Statut Membre Dernière intervention 2 octobre 2008 12
12 janv. 2006 à 18:04
Oui mais dans ce cas je perd l'état courant du site...
J'ai réussi à faire autrement : en faisant un try catch "à la main" à chaque appel de méthodes critiques....:p

Merci pour ton aide !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
12 janv. 2006 à 20:19
comment ca tu perds l'erreur ?

tu peux recuperer la derniere erreur en faisant un server.getLastError donc dans le application_onerror tu fais un

session("eror") = server.getLastErro();
server.transfert("erreur.aspx");

puios dans error.aspx tu recup la variable session, tu castes etc... t'auras tout ce que tu veux :)


<HR>
Cyril - MVS - MCP ASP
0
zigxag Messages postés 142 Date d'inscription jeudi 10 février 2005 Statut Membre Dernière intervention 2 octobre 2008 12
13 janv. 2006 à 08:10
Non non en fait je voulais dire que dans ce cas je dois changer de page.... Alors que moi je veux rester sur la même page que celle affichée par l'utilisateur, et n'afficher qu'un message, dans un label de la master, lorsque l'erreur se lève...
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
13 janv. 2006 à 09:10
oui mais si onError n'est pas levé c'est que le problème ne vient pas de la page mais au niveau de l'application !

Pour faire ce que tu veux il suffit de s'abonner dans le constructeur à l'event error


<HR>
Cyril - MVS - MCP ASP
0
Rejoignez-nous