Comment lancer une exception lors de la session de débogage dans VS2010
J'ai un petit problème.
Parfois, quand je le débogage d'une application que je souhaite simuler au cours de la session de débogage à une exception générée à partir d'une méthode, mais il n'y a aucun moyen de le faire.
Je ne peux même pas faire glisser le curseur (le jaune qui indiquent la ligne actuelle) à un bloc d'exception.
La seule façon de déclencher une exception lors de l'exécution est de modifier la ligne de code et à l'écriture de l'exception, je veux lancer. Cette méthode n'est pas bonne parce que j'ai peut-être oublié de revenir dans la course suivante.
Vous devez vous connecter pour publier un commentaire.
Malheureusement, Visual Studio n'est toujours pas en charge la levée d'une exception de Fenêtre exécution.
Ainsi que ne prend pas en charge les expressions lambda, les types anonymes, les initialiseurs de la collection, etc. Quelque chose comme .NET 2.0 uniquement.
Vous pouvez également utiliser
Debug.Assert(false);
Le seul vraiment pratiques, j'ai trouvé lancer des exceptions à partir à l'intérieur d'une méthode au cours de débogage est de tirer variable sous les pieds de l'exécution de processus. I. e. définir une variable qui est sur le point d'être utilisé à la valeur null sera bien évidemment de jeter une exception dès qu'elle est exécutée.
Cependant, cela ne vous permettra pas de jeter personnalisé exceptions (par exemple, certains types ou des messages).
Des exceptions précises, nous devons modifier le code selon les posts précédents.
Vous pourriez utiliser la compilation conditionnelle:
EDIT: Avec un supplément de condition:
Vous pouvez créer une configuration personnalisée (similaire à la Release/Debug) ci-dessus conditionnelle définies (propriétés du projet->Build->Symboles de Compilation Conditionnelle).
DEBUG
est le symbole), afin de les contrôler en cours d'exécution avec que ainsi non seulement dans une version de débogage de l'exécuter.Vous pouvez utiliser
et changement de lancer pour de vrai. Ou de créer une méthode/propriété et de les appeler.
- Vous de vérifier que vous êtes la manipulation de l'exception dans le code appelant?
Si oui, vous voudrez peut-être regarder dans l'écriture de tests unitaires et d'utiliser un moqueur cadre de tirer tihs off.
J'ai de l'expérience avec Moq (Mock)
http://code.google.com/p/moq/
Il y a des tutoriels sur le site de l'installation et de courir avec lui, il est assez facile une fois que vous y aller.
Vous aurez besoin pour l'installation d'un projet de test dans votre solution tout d'abord, ajoutez le Moq dll, puis d'écrire une méthode de test qui met en place le Moq de votre objet et lui dit de lever une exception.
Ça va ressembler à quelque chose comme ceci dans le but d'avoir de la méthode sur l'objet de votre lever une exception.
J'espère que cette aide.
Si vous êtes à la lecture de cette réponse, Visual Studio 2013 est disponible et prend en charge d'Éditer et de Continuer dans les applications 64 bits. Si vous avez Visual Studio 2013 et sont à la recherche d'un moyen de lever des exceptions ici et là pour voir comment votre gestion des exceptions ou des pages d'erreur du travail, il suffit d'utiliser de Modifier et de Continuer et de taper directement dans votre code.
Cliquez sur Debug > Démarrer le Débogage. Votre web app se lance. Placez un point d'arrêt. Cliquez sur par le biais de votre application jusqu'à ce que le point d'arrêt est atteint. Vous êtes maintenant libre d'ajouter des rapports de jet directement dans votre code! Il suffit d'entrer
throw new Exception("test")
ou que ce soit, enregistrez le fichier, puis cliquez sur continuer (à l'avance de votre débogueur) et il sera procédé à la ligne que vous venez d'ajouter, comme si vous aviez compilé.