2009-08-18 2 views

Répondre

21

Oui, c'est possible. Jetez un oeil sur le blog suivant par Shawn Burke pour plus de détails:

Configuring Visual Studio to Debug .NET Framework Source Code

D'autre part, si vous voulez simplement vérifier comment certaines choses sont mises en œuvre dans le cadre .NET (sans débogage), puis utilisez .NET Reflector (comme mentionné par LorenVS). C'est un outil très utile qui peut vous aider à comprendre le framework .NET.

+1

Vous me battez sur le même lien de blog de 30 secondes;) –

4

La meilleure façon que je peux vous donner est utilisé réflecteur .NET de Redgate. Vous ne pouvez pas y entrer, mais cela vous donnera le code source complet pour différentes classes .NET.

+3

effectivement vous pouvez déboguer avec studio visuel et réflecteur. Y compris pénétrer dans, les points d'arrêt etc ... voir http://orand.blogspot.com/2006/10/debugging-with-reflector-and-visual.html mais la réponse Martin a donné est plus facile dans le cas spécifique du .net cadre. – olle

1

Il est possible d'utiliser la réflexion et ILDASM pour regarder l'IL, mais je ne pense pas qu'il soit possible d'entrer dans le code pendant le débogage.

2

J'ai récemment effectué un débogage dans VS qui consistait à obtenir du code source .NET (lié à OleDB) dans lequel je pouvais entrer et voir ce qui se passait. Une chose que je voudrais mentionner, quand vous passez par le code source .NET, ne vous attendez pas à ce que la fenêtre locale (ou les conseils de données) vous montre toujours la valeur des variables.

Par exemple, des variables simples comme int, longs, string, etc., vous pourrez obtenir la valeur de. Mais essayez d'obtenir la valeur des objets (Liste <>, objets personnalisés, DataTable, etc) et vous obtiendrez rien mais un message disant que le code a été optimisé et vous ne pouvez pas voir les valeurs.

Même si vous disposez de la source .NET, le code compilé réel auquel vous avez joint est la version finale avec les optimisations activées. Cela signifie qu'une grande partie des données pour les variables et les objets n'est pas disponible pour l'analyse.

Juste un heads-up.

3

Mes 3 cents:

  1. Si vous avez Visual Studio 2008 SP1 ou version ultérieure, vous ne devez pas installer le QFE mentionné dans le aussi fan de blog Configuring Visual Studio to Debug .NET Framework Source Code
  2. que je suis de .NET Reflector, le code source est meilleur car les noms de variables locales et les commentaires sont conservés. Les commentaires et les noms de variables appropriés peuvent aider beaucoup!
  3. Vous pouvez télécharger (presque) tout le code source .NET Framework à la fois en utilisant NetMassDownloader. Cela devient très utile lorsque vous êtes à un endroit sans accès à Internet.
+0

+1 Pour NetMassDownloader - en utilisant les fichiers de symboles et la source téléchargés, il peut être utilisé pour le déboguage avec Visual Studio 2005 également. – abhilash

Questions connexes