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 :

Problème affichage exception [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 202
    Par défaut Problème affichage exception
    bonjour,
    dans un morceau de code, je souhaite afficher un message spécial quand une exception est déclenchée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
            internal void Delete(Strategy element)
            {
                try
                {
                 myDAElement.Delete(element);
                }
                catch
                {
     
                    MessageBox.Show(Localize.Delete_strategy);
     
                }
            }
    Ici c'est par exemple pour une suppression. donc j'ai enlevé le throw et j'ai mis un MessageBox mais comment je fais pour sortir du catch juste après sans qu'il me balance l'exception en quittant l'exe? et surtout qu'il ne fasse pas la suppression...

    Merci d'avance à vous

  2. #2
    Membre émérite

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2011
    Messages
    487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2011
    Messages : 487
    Par défaut
    Bonjour,

    Si tu reçois une exception dans ton try, elle est interceptée par ton catch et ton message est affiché. Elle ne sera pas propagée vu que tu n'utilises pas throw dans ton catch.

    Je ne vois pas trop où est ton problème :p
    Mon blog sur les technos .NET et Agile -> http://blog.developpez.com/maximepalmisano/

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 202
    Par défaut
    Merci pour ta réponse, en fait après avoir affiché le message, il rentre quand même dans la méthode delete

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Février 2003
    Messages
    2 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 2 193
    Par défaut
    c'est impossible

    il doit y avoir un 2ème appel à la fonction "void Delete(Strategy element)"

  5. #5
    Membre émérite

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2011
    Messages
    487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2011
    Messages : 487
    Par défaut
    Quand tu re-rentres dans la méthode delete, essaye de voir la callstack pour voir d'où vient ton appel
    Mon blog sur les technos .NET et Agile -> http://blog.developpez.com/maximepalmisano/

  6. #6
    Membre émérite 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
    Par défaut
    Avec ton catch et le code, tel qu'il est montré, si tu entres dans la catch, tu n'exécutes pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    myDAElement.Delete(element);
    qui est dans le try... enfin si ; mais comme ça plante, le traitement est arrêté.

    Si tu arrives une nouvelle fois dans la méthode, pas de mystère : second appel !

    Le conseil de la pile des appels est bon. suis-le.

  7. #7
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Février 2003
    Messages
    2 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 2 193
    Par défaut
    ben tu as résolu le problème tout seul normalement

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

Discussions similaires

  1. [Débutant] Problème d'affichage + exception
    Par amina17 dans le forum ASP.NET MVC
    Réponses: 10
    Dernier message: 28/08/2012, 17h25
  2. Problème affichage primitive
    Par goutbouyo dans le forum DirectX
    Réponses: 4
    Dernier message: 29/12/2004, 18h25
  3. [SimpleDateFormat] problème d'exception
    Par julienOriano dans le forum Collection et Stream
    Réponses: 8
    Dernier message: 12/07/2004, 17h01
  4. [Plugin][VE] Problème affichage
    Par sebb84 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 05/07/2004, 14h50
  5. [DOS] Problème affichage de DOS dans un Memo
    Par Pedro dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 25/06/2004, 13h31

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