web-dev-qa-db-fra.com

Se débarrasser de "Il n'y a pas de code source disponible pour l'emplacement actuel."

D'accord, c'est ma faute, mais je n'arrive pas à me sauver.

Chaque fois que j'essaye d'entrer dans une classe qui a des champs avec des affectations appelant dans du code .NET, j'obtiens une boîte de dialogue qui contient le texte "Il n'y a pas de code source disponible pour l'emplacement actuel.":

Screenshot of error message

Par exemple, entrer dans le constructeur de la classe suivante me donnerait le message ci-dessus:

public class Test
{
    private Stack<String> _Dummy = new Stack<String>();
    public Test() { }
}

Je suppose que c'est parce qu'à un moment donné, j'ai manipulé les paramètres du serveur de symboles, mais peu importe ce que je joue maintenant, je n'arrive pas à me débarrasser de ce message.

Où ma stupidité a-t-elle oublié ce qu'elle a fait?


Résumé de mon actuel options :

  • [] Activer le débogage au niveau de l'adresse
  • [x] Activer Just My Code (géré uniquement)
  • [] Activer le pas de source du framework .NET
  • [] Activer la prise en charge du serveur source
  • Emplacements du fichier de symboles .pdb - vide
  • Cachez les symboles des serveurs de symboles dans ce répertoire: C:\temp (vide)

Vérifiez si certains fichiers source sont accidentellement exclus. Effectuez les propriétés de la solution et consultez la section Fichiers source de débogage sous Propriétés communes.

28
JGurtz

Dans l'Explorateur de solutions, vérifiez la page de propriétés de votre solution sous Propriétés communes, Fichiers source de débogage. Si vous voyez l'assembly répertorié sous "Ne recherchez pas ces fichiers source:", supprimez-le et le problème devrait disparaître.

Ouvrez la page de propriétés de la solution

Screenshot of right clicking on the solution in Visual Studio's Solution Explorer

Cochez "Ne pas rechercher ces fichiers source"

Screenshot of the solution property pages in Visual Studio solution

25
Keith Ketterer

Si vous ne souhaitez pas déboguer l'assembly .NET, une solution rapide pour éviter le problème "Aucune source disponible à l'emplacement actuel" consiste à décocher la case "Exiger que les fichiers source correspondent exactement à la version d'origine" sous Outil -> Options -> Débogage -> Général

12
Shilpa Silk

Voici ce que j'ai fait pour résoudre ce problème. Tout d'abord, arrêtez le débogage et ouvrez simplement votre solution dans VS. Ensuite, assurez-vous que la configuration de votre solution est définie sur Debug plutôt que sur Release. Ensuite, faites simplement une reconstruction (pas une construction, une reconstruction). La prochaine fois que vous lancez le débogueur, il devrait fonctionner normalement et vous ne devriez pas recevoir ce message d'erreur.

J'espère que cela t'aides!

4
Joe

Si vous ne voulez pas que cet onglet ennuyeux apparaisse, vous pouvez essayer ce module complémentaire que j'ai créé: http://erwinmayer.com/labs/visual-studio-2010-extension-disable-no-source -available-tab /

Il est directement téléchargeable sur la galerie Visual Studio: http://visualstudiogallery.msdn.Microsoft.com/en-us/fdbb2036-471e-40a7-b20e-31f8fd5578fa

4
Erwin Mayer

Une façon, qui fonctionne également pour les éditions Express de Visual Studio (par exemple, Visual Basic 2005 Express Edition), consiste à renommer le .suo fichier. Il se trouve dans le même dossier que le fichier de solution, .sln. Quittez Visual Studio avant de renommer le fichier.

Screenshot of Windows Explorer with a .suo file highlighted

Le .suo Le fichier contient des paramètres non critiques, comme les positions des fenêtres, etc. Cependant, il contient également tous les points d'arrêt, c'est pourquoi il vaut probablement mieux le renommer que le supprimer au cas où cette action serait regrettée.

2
Peter Mortensen

J'ai eu le même problème dans un programme C++ non géré: lorsque le débogueur était dans la fonction main, il montrait toujours "Aucun code source disponible" et, ce qui était intéressant, les autres fonctions de ce fichier étaient affichées sans problème. Dans ce cas, le problème était que j'allouais trop de données sur la pile. Après l'avoir réduit, le débogueur a commencé à fonctionner sans problème.

C'était dans Visual Studio 2010.

2
psur

Cette erreur m'a aussi rendu fou. J'utilisais 'AjaxControlToolkit' et l'avais référencé en utilisant 'Ajouter une référence' à mon projet.

J'ai supprimé la référence "AjaxControlToolkit" et ajouté la même chose avec "Ajouter un élément existant" et après cela, je n'ai eu aucun problème du tout ...

2
Musawwir Ali

Vérifiez si vos projets ont une référence de projet, pas une référence DLL! S'il existe une référence DLL, vos modifications ne seront pas reconnues par votre projet référencé, et vous obtiendrez un message d'erreur comme le vôtre.

2
Ali Ersöz

Voilà comment je l'ai résolu.

Faites un clic droit sur votre projet -> Propriétés -> Compiler -> Options de compilation avancées ...

Réglez ensuite "Générer les informations de débogage" sur "Complet" dans le menu déroulant.

J'espère que cela pourra aider.

1
curiousBoy

Avez-vous essayé de créer cette page? J'ai eu un problème avec quelque chose de similaire avec AjaxControlToolkit: Modal Popup Extender. Il ne s'affichait que lorsque je lui ai donné des contrôles CSS et ASP.NET .

0
fredyfx

Cela a fonctionné pour moi:

  1. Vérifiez le "Activer le débogage de code non managé" sur la page des propriétés pour le * .DLL référencé
  2. Recompiler référencé * .DLL
  3. Supprimez puis ajoutez à nouveau le fichier * .DLL référencé à votre projet
0
s15199d

J'avais pour une raison quelconque désactivé tous les Common Language Runtime Exceptions dans VS 2017.

Pour résoudre ce problème, ouvrez le Exception Settings sous Débogage> Windows> Paramètres d'exception et cochez la case Exceptions Common Language Runtime dans Exception Settings fenêtre

0
HarshWombat