web-dev-qa-db-fra.com

Erreur: vous déboguez une version release de X.dll

Contexte

J'ai un projet d'application ASP.NET MVC, ainsi que divers autres projets au sein d'une solution Visual Studio. Les différents projets utilisent différentes versions de la bibliothèque NPoco comme suit:

  • Le projet MVC comprend une version de NPoco via NuGet.
  • Certains autres projets incluent une version (probablement différente) de NPoco via une référence à une DLL (et non à la DLL fournie par NuGet).
  • L'un des projets est le code source d'une version de NPoco avec quelques modifications.

J'utilise Visual Studio 2015 Update 3 14.0.25422.01.

Erreur

Pour une raison quelconque, lorsque je lance cette application dans le débogueur à l'aide de la commande normale Démarrer le débogage dans Visual Studio, il démarre, mais il génère également l'avertissement suivant:

 You are debugging a Release build of NPoco.dll. Using Just My Code with Release builds using compiler optimizations results in a degraded debugging experience (e.g. breakpoints will not be hit).

Si j'appuie sur Continue Debugging, tout semble fonctionner comme d'habitude, y compris les points d'arrêt.

Ce problème n'a commencé que récemment.

Question

  1. Quelqu'un sait ce qui a causé l'erreur ci-dessus?
  2. Ai-je quelque chose de mal configuré?
16
Sam

Désactivez cette option sous Debug-> Options-> Supprimer l'optimisation JIT lors du chargement du module (géré uniquement).

Un rapport de connexion soumis avant:

https://connect.Microsoft.com/VisualStudio/feedback/details/2116788/flag-optimize-is-passed-to-the-debugger-even-while-the-build-settings-optimize-code-is- non-activé-sur-mvc-c-web-projets-lors-d'utilisation-juste-mon-code .

Assurez-vous également que tous les projets sont en mode débogage. Le code d'optimisation a été décoché comme ceci:

Le projet VS2015 ne fonctionne plus en mode débogage

21
Jack Zhai-MSFT

Je viens tout juste d'avoir un problème similaire que j'ai pu résoudre en nettoyant ma solution 3 fois et en le reconstruisant. J'espère que cela aide aussi les autres.

10
tokyo0709

J'ai constaté que lorsque vous mettez à jour un paquet Nuget qui a une dépendance sur un projet référencé (que vous pouvez avoir modifié sa version), il remplace ceci par la version Nuget de la DLL.

Pour résoudre ce problème après la mise à jour (ou l’ajout) de votre paquet de nugets, vous devez supprimer la référence à la dll (par exemple, NPoco) et ajouter une référence de projet au projet avec votre version modifiée.

3
TrtlBoy

Dans mon cas, j'ai supprimé Webapplication.dll pour mon projet et le contenu du dossier de publication. Reconstruisez à nouveau le projet et cela fonctionne pour moi.

1
Manoj Kumar

L'option "Optimiser le code" est disponible au niveau du projet Visual Studio. Supprimez cela pour le mode débogage.

1
Mahesh Malpani

Si le problème persiste, j’ai confondu le GAC en installant le logiciel que je tentais de déboguer.

L'enregistreur de fusion m'a aidé à comprendre cela, ha. 

0