Mon débogueur ne fonctionne pas,
Je mets un point d'arrêt, mais en mode exécution, time visual studio ne s'arrête pas sur le point d'arrêt.
Comment le réparer?
Il n’ya rien de spécial dans mon application, c’est une simple application web. J'utilise Visual Studio 2005.
J'ai créé un nouveau projet d'application Web et, sur la page default.aspx, il y a un contrôle de grille obout.
J'ai été en mesure de le déboguer, le débogueur n’est soudainement plus touché.
notez que le débogueur est sur l'événement de chargement.
Retrouvez ci-dessous les étapes qui ont résolu mon problème:
C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files
Il y a plusieurs choses qui pourraient être fausses:
Point de rupture n'a pas été touché, j'ai nettoyé et reconstruit, mais ne frappe toujours pas,
Je viens de rouvrir la page (dans mon cas, Contrôleur) et a commencé à bien fonctionner ..
Les symboles ne sont probablement pas chargés, c'est pourquoi le point d'arrêt ne sera pas touché. Avez-vous défini le site Web comme projet de démarrage?
Lors du débogage, quel processus at-il attaché? Ce devrait être w3wp.exe si vous voulez déboguer du code asp.net.
Vous devrez peut-être définir votre application dans Web Config pour pouvoir la déboguer.
<system.web>
<!--
Set compilation debug="true" to insert debugging
symbols into the compiled page. Because this
affects performance, set this value to true only
during development.
-->
<compilation debug="true">
<assemblies>
<add Assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add Assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add Assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
</assemblies>
</compilation>
Bouton droit de la souris sur votre projet -> Construire -> décochez "Optimiser le code"
Vous devez exécuter le mode débogage et non le mode publication.
Voici un article détaillé sur Comment: activer le débogage pour les applications ASP.NET En gros, vous pouvez définir le mode de débogage dans les propriétés du projet ou dans web.config.
J'ai vu les réponses existantes énumérer de nombreuses causes possibles, mais j'aimerais en ajouter une de plus: si vous utilisez des outils de post-compilation (tels que ILMerge), vérifiez si ces outils conservent vos informations de débogage (existe-t-il un fichier .pdb
ou peut-être l'avez-vous incorporé dans la sortie de votre compilation). Pour ceux qui utilisent réellement des tâches AfterBuild
dans leur .csproj
, je suggère vraiment de vérifier.
Faites un Clean Project
et assurez-vous de cliquer sur Debug
et non Run
essayez de décocher "Activer le processus d'hébergement Visual Studio" dans les propriétés du projet -> debug a fonctionné pour moi
Cela peut se produire lorsque Visual Studio est défini sur debug Code géré mais que le code n'est pas géré (le code géré s'exécute sous le contrôle du common language runtime (CLR)).
Pour résoudre le problème, changez le mode de débogage comme indiqué dans le côté droit de la figure ci-dessous en Natif uniquement , Mixte ou Auto .
Remarque secondaire: il est recommandé de ne pas choisir Mixte à moins que votre système ait à la fois du code géré et du code natif (code qui ne s'exécute pas sous le CLR), car Visual Studio ne peut pas être associé à un processus déjà en cours d'exécution en mode mixte. Pour déboguer un code déjà en cours d'exécution, Visual Studio doit être configuré pour déboguer dans Natif uniquement ou Géré uniquement .