IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Gestion des erreurs


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Août 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 44
    Par défaut Gestion des erreurs
    Bonjour à tous.

    Y a-t-il un moyen de gérer des erreurs asp.net ?
    Un peu comme en VB6 on a la fonction Err. Je voudrais éviter que les utilisateurs de l'application tombe sur des messages d'erreur trop complexes.

    Merci bien.

  2. #2
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut
    ça me parait un peu simple ta question, tu alnce l'idée comme ça ou t'a pas vraiement cherché ?

    Alors pour gérer les erreur tu as le truc bien (que j'ai pas encore tout compirs, mais c'est pas grave) qui fait comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Try
         ma série d'instructions
    Catch
         des isntructions si ça plante
    Finally
         là, je sais plus ce qu'il faut mettre
    End Try
    Et dans tout ça tu dispose d'un objet Err, qui est presque le mêmqu'en VB6, sauf qu'il est .NET et tu peux récupérer des nuémro, des description et des messages. Bref, va faire un tour dans la MSDN avec ça et tu devrais trouver ton bonheur.

    Kenavo

  3. #3
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    tout ce qui est dans le finally sera executé dans tous les cas (sauf fin de l'appli avec end)
    meme si tu fais exit sub dans le try ca fait le finally avant de sortir

    ca permet de desinstancier ce qu'on a créé de manière sure

    un bloc try doit avoir soit catch soit finally soir les deux

    sur le catch tu peux faire catch ex as exception
    et ex est l'objet qui contient l'erreur, te permet d'avoir la pile d'appel etc...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  4. #4
    Membre averti
    Inscrit en
    Août 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 44
    Par défaut
    En fait j'avais essayé avec les messages personnalisés dans le webconfig, mais ça ne me retourne pas les pages spécifiées. Du coup je me suis dit qu'il y a un truc que je n'ai pas su faire.
    En plus avec ça j'ai l'impression de ne pouvoir géré que les erreurs http.

    Pourtant ce sont surtout les erreurs ASP.Net qui m'intéressent.

    Je ne connais pas du tout la fonction Try.
    Je vais essayer pour voir. Mais une question Dois'je la mettre sur l'événement qui déclenche l'erreur ou ailleurs, dans le Page_Load par exemple, avec un If Err pour déterminer la nature de l'erreur

  5. #5
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    si tu as deja fait du vb6 il y avait à l'époque
    On Error goto erreur

    code


    erreur:
    gestion de l'erreur


    try catch fait à peu près la meme chose
    en cas d'erreur dans le bloc try, ca saute dans le catch

    donc partout ou tu penses qu'il peut y avoir bug tu peux mettre le code dans un bloc try/catch
    ensuite tester ce que vaut la variable ex


    en cas de plantage dans une fonction appelé dans un bloc try/catch l'erreur est bien interceptée

    par contre toute erreur hors d'un try fait un plantage à l'utilisateur
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  6. #6
    Membre averti
    Inscrit en
    Août 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 44
    Par défaut
    Si c'est aussi simple que le On error goto de VB6, tant mieux.

    Merci, je vais essayer ça.
    Mais j'ai une autre préoccupation : existe-t-il un endroit sur la planète ou je peux trouver une liste des erreurs ASP.Net et leur valeur Err.number ?

Discussions similaires

  1. [FB] Gestion des erreurs et application francophone
    Par Benjamin GAGNEUX dans le forum Installation
    Réponses: 10
    Dernier message: 20/05/2006, 14h54
  2. [struts][Datasource]Gestion des erreurs
    Par GreenJay dans le forum Struts 1
    Réponses: 8
    Dernier message: 15/09/2004, 16h51
  3. [VB6] Gestion des erreurs dans une dll
    Par zimba-tm dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 02/08/2004, 11h20
  4. [XSLT]Est ce qu'il y'a la gestion des erreur en xslt ?
    Par miloud dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 04/02/2004, 17h19
  5. [LG]gestion des erreurs
    Par frontin dans le forum Langage
    Réponses: 3
    Dernier message: 29/11/2003, 22h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo