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

C# Discussion :

Catcher toutes les exceptions


Sujet :

C#

  1. #1
    Membre averti Avatar de Seth77
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2005
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 448
    Points : 410
    Points
    410
    Par défaut Catcher toutes les exceptions
    Salut

    Comment faire pour recuperer toutes les exceptions au niveau d un application ?

    thx ++

  2. #2
    Membre habitué Avatar de cfillion
    Homme Profil pro
    Arrangeur musical
    Inscrit en
    Avril 2010
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Arrangeur musical
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Avril 2010
    Messages : 49
    Points : 168
    Points
    168
    Par défaut
    Tu met un try/catch à chaque méthode qui est susceptible de générer une exception.
    Si tu veut éviter d'avoir à copier le message d'erreur, tu le met dans une nouvelle méthode qui sera appelée à chaque catch.

  3. #3
    Membre habitué Avatar de swif79
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2009
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2009
    Messages : 79
    Points : 169
    Points
    169
    Par défaut
    Bonsoir,
    Réponse ici.

  4. #4
    Membre averti Avatar de Seth77
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2005
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 448
    Points : 410
    Points
    410
    Par défaut
    thx

  5. #5
    Membre expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Points : 3 570
    Points
    3 570
    Par défaut
    Pour les applications WPF, il y a Application.DispatcherUnhandledException.
    Mais attention, cela ne catche que les exceptions qui ne sont pas handled au niveau du thread UI. Si sur un autre thread, il faut catcher l'exception et faire un throw sur le thread UI.
    C'est la que je remarque qu'il y a plein de termes informatiques dont je ne connais pas la traduction française, et j'ai l'impression de parler comme JCVD

  6. #6
    Membre averti Avatar de Seth77
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2005
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 448
    Points : 410
    Points
    410
    Par défaut
    LOL
    thx

    C est la mon petit problemes ; les exceptions qui viennent des autres threads ...
    c est ce qu il me semblait ; qu il fallait les catcher a pars !

    ++

  7. #7
    Membre éprouvé Avatar de kheironn
    Homme Profil pro
    Chef de projets technique C# / MVC / .Net
    Inscrit en
    Février 2007
    Messages
    822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets technique C# / MVC / .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2007
    Messages : 822
    Points : 1 108
    Points
    1 108
    Par défaut
    Citation Envoyé par cfillion Voir le message
    Tu met un try/catch à chaque méthode qui est susceptible de générer une exception.
    Si tu veut éviter d'avoir à copier le message d'erreur, tu le met dans une nouvelle méthode qui sera appelée à chaque catch.
    D'une façon générale, tu ne mets un catch que si tu fais quelque chose.
    ne sert à rien ! Tu dois mettre le catch dans la couche responsable des traitements des erreurs, ainsi tu conserves la pile des appels et ne fait pas de code useless qui attrape pour rien ! (perte de perf dans ce cas : le catch consomme)

    par contre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Catch
    {
    // traitements des logs
        Throw;
    }
    est un exemple d'utilisation raisonnable du Catch

    Personnellement, je préfère retourner des Null plutôt que des exceptions. Mais Lorsque tu utilises à fond le système des exceptions (je me souviens de CommerceServer qui fonctionne comme ça) tu te retrouves avec une pelleté d'exceptions métiers du genre "QueryWithNoResultException" et tu gères tout au try/catch.

    Ne pas oublier les Try/finally qui sont bien utiles pour fermer, libérer etc.

    pour répondre à "JCVD" :
    Mais attention, cela n'attrape que les exceptions qui ne sont pas générées au niveau du processus léger IU (interface utilisateur). Si sur un autre processus léger, il faut attraper l'exception et la lever sur le processus léger de l'interface utilisateur.
    LOL ! Ca peut choquer certains...


    Edit : très intéressant cet article swif79

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. intercepter toutes les exceptions Oracle ?
    Par mstic dans le forum Accès aux données
    Réponses: 3
    Dernier message: 19/04/2007, 10h52
  2. lister toutes les exceptions pouvant être lancées
    Par fabaroulettes dans le forum Langage
    Réponses: 2
    Dernier message: 02/03/2007, 18h05
  3. Capturer toutes les exceptions
    Par schneidb dans le forum Interfaces Graphiques en Java
    Réponses: 4
    Dernier message: 13/02/2007, 14h51
  4. [VB.net] MsgBox pour toutes les exceptions
    Par collaud_vb dans le forum Windows Forms
    Réponses: 5
    Dernier message: 06/10/2006, 21h56
  5. [Exceptions]Attraper toutes les exceptions
    Par willowII dans le forum Langage
    Réponses: 4
    Dernier message: 16/08/2006, 19h41

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