2009-08-18 97 views

回答

21

是的,這是可能的。對細節的看看下面的博客文章由肖恩·伯克:

Configuring Visual Studio to Debug .NET Framework Source Code

在另一方面,如果你只是想看看事情如何某些在.NET框架中實現(不調試)然後使用.NET Reflector(如LorenVS所述)。這是一個非常有用的工具,可以幫助您瞭解.NET框架。

+1

你擊敗了我同樣的博客鏈接30秒;) – 2009-08-18 22:12:53

4

我可以向您正在使用.NET反射從展鵬給出的最好方式。你不能介入它,但它會給你各種.NET類的完整源代碼。

+3

實際上你可以用visual studio和反射器進行調試。包括步入,斷點等...請參閱http://orand.blogspot.com/2006/10/debugging-with-reflector-and-visual.html,但馬丁給出的答案在.net的特定情況下更容易框架。 – olle 2009-08-18 22:15:14

1

它可以使用反射和ILDASM看IL,但我不認爲這是可能步入代碼,而調試。

2

最近我在VS一些調試,其中包括獲得一些.NET源代碼(OLEDB相關的),我可以步入,看看發生了什麼事情之一。有一件事我會提到,當你通過.NET源代碼時,不要指望本地窗口(或數據提示)總是告訴你變量的值。

例如,如int,long的字符串等簡單的變量,你將能夠獲得的價值。但是嘗試獲取對象的值(列表<>,自定義對象,DataTable等),並且只會收到一條消息,說明代碼已經過優化,並且看不到值。

即使你有.NET源,您連接到的是發佈版本啓用優化實際的編譯代碼。這意味着很多變量和對象的數據都無法分析。

只是單挑。

3

我3美分:

  1. 如果您的Visual Studio 2008 SP1或更高版本,你不必爲我的安裝在Configuring Visual Studio to Debug .NET Framework Source Code博客文章中提到的QFE
  2. 儘可能多的風扇.NET Reflector,源代碼更好,因爲保留了本地變量名稱和註釋。評論和適當的變量名稱可以幫助很多!
  3. 您可以下載(幾乎)所有的.NET Framework的源代碼同時使用NetMassDownloader。當你在沒有互聯網接入的地方時,這變得非常有用。
+0

+1對於NetMassDownloader - 使用下載的符號文件&源,它也可以用於Visual Studio 2005的調試。 – abhilash 2009-08-19 11:50:45

相關問題