Qu'est-ce que l'Exception interne
J'ai lu la MSDN mais, je ne pouvais pas comprendre ce concept.
Corrigez-moi si je me trompe,
Un innerexception seront utilisées dans la main avec l'exception en cours.
Exception interne va se produire en premier, puis le courant exception (si il y a une exception) c'est la raison pour laquelle InnerException
est vérifié contre null
. Afin de conserver un intérieur d'exception que nous avons à passer en tant que paramètre.
Suis-je droit?
Si vous sont généralement intéressés uniquement à l'intérieur de l'exception, mais s'il vous plaît être conscient que l'on peut aussi avoir son exception interne. Vous pouvez rouler votre propre routine pour trouver le centre le plus Intime de l'exception.
Peut-être obtenir la racine exception, c'est à dire il pourrait y avoir plusieurs exceptions internes... while (ex.InnerException != null) ex = ex.InnerException;
Bon tutoriel à ce sujet, de la bonne vieille Kudvenkat pour les gens qui trébuchent sur cette question: youtube.com/watch?v=MO3sOTWfZPc
Peut-être obtenir la racine exception, c'est à dire il pourrait y avoir plusieurs exceptions internes... while (ex.InnerException != null) ex = ex.InnerException;
Bon tutoriel à ce sujet, de la bonne vieille Kudvenkat pour les gens qui trébuchent sur cette question: youtube.com/watch?v=MO3sOTWfZPc
OriginalL'auteur user2526236 | 2014-04-03
Vous devez vous connecter pour publier un commentaire.
Vous pouvez voir le code ci-dessous.
Première étape, je lis "abc" en entier. Il va augmenter FormatException.
Dans le bloc catch, j'essaie d'ouvrir un fichier texte pour le journal de message d'exception. Mais ce fichier n'existe pas. FileNotFoundException sera augmenter.
Je veux savoir ce que soulever l'exception de deuxième, j'ajoute donc la première exception (ou FormatException) au constructeur de la deuxième exception.
Maintenant la première exception est InnerException de la deuxième exception.
Dans le bloc catch, je peux accéder à InnerException propriétés de savoir quelle est la première exception.
C'est utile?
OriginalL'auteur Thinh Vu
Un intérieur d'exception est l'exception qui a provoqué l'exception en cours.
Il est utilisé dans les cas où vous voulez à la surface d'une autre exception que celle que votre code de pris, mais vous ne voulez pas de jeter le contexte d'origine.
Pour une nouvelle exception pour avoir des informations sur un précédent, comme vous l'avez dit, vous passez en tant que paramètre du constructeur de la nouvelle.
Généralement, null exception interne signifie que le courant exception est la cause de la situation exceptionnelle.
OriginalL'auteur Victor Hurdugaci
Objets d'Exception sont en lecture seule par le temps, vous arrivez à un
catch
bloc, parfois, votre code ne peut rien faire pour gérer l'exception, mais il peut ajouter de l'information par la création d'une nouvelle exception et d'emballage à l'origine de la levée d'une exception à l'intérieur d'elle. De ce fait, il de sorte que vous pouvez ajouter des informations, mais ne pas être nécessaire de copier champ par champ, chaque élément d'information de l'exception d'origine (qui peut même ne pas être possible si vous ne connaissez pas le type d'exception sera levée).Ici est légèrement modifié extrait à partir d'un projet de mine qui utilise un peu de tout ce qui concerne les Exceptions.
OriginalL'auteur Scott Chamberlain