解讀VS2008中查看.NET源碼的設(shè)置方法_.Net教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:淺析asp.net中數(shù)據(jù)校驗部分的封裝與應(yīng)用
      我們的業(yè)務(wù)系統(tǒng)涉及到較多的表單編輯與校驗,最簡單的辦法是使用asp.net自帶的數(shù)據(jù)校驗控件即可,但這樣有以下3個問題: 1 校驗控件要在設(shè)計時加入到表單上,并手工設(shè)置:數(shù)據(jù)類型,錯

      在Visual Studio 2008中可以通過調(diào)試進入。NET Framework的源代碼,從這個意義上說,.NET Framework是開放部分源代碼了,但現(xiàn)在只支持調(diào)試模式下進入源代碼。而其,這個功能在Visual Studio 2008 Express版本中不能支持。注意,所有的源代碼都是從指定的遠程服務(wù)器上按需下載的,而不是VS2008安裝后就自帶的。

      要想使用這個功能,需要額外的配置一下,因為默認配置中VS2008是不開啟這個功能的,那么如何配置呢?在Scott的Blog中有專門的說明,但是他的源代碼服務(wù)器URL給錯了。收聽了一下他們的采訪視頻,確定了正確配置的方式,如下:在VS2008中,菜單Tools->Options后,(1)如果你在VB Profile環(huán)境下運行,需要將左下角的Show All Settings勾選上(否則將不會出現(xiàn)Debugging選項),然后選擇Debugging->General.(2)如果你不是在VB Profile下,則直接選擇Debugging->General.(3)去掉“Enable Just My Code”的勾選。代表不僅僅只是調(diào)試我們自己開發(fā)的代碼(言外之意也要調(diào)試。NET Framework的源代碼)

      (4)打開“Enable Source Server Support”勾選。代表開啟源代碼服務(wù)器的支持(言外之意在需要的時候去源碼服務(wù)器獲取。NET Framwork的源代碼(5)選擇“Debugging->Symbols”頁,然后設(shè)置符號下載URL和緩存位置。設(shè)置為http://referencesource.microsoft.com/symbols .(6)設(shè)置符號的本地緩存位置。如:C:\temp\symbols.注意確保你的Windows賬戶能讀寫這個位置。

      (7)打開“Search the above locations only when symbols are loaded manually”選項。表明只有當symbols被手動加載得情況下才使用。在這種模式下,第一次進入需要進入。NET Framework中的某一個dll時,需要手動執(zhí)行Load Symbols操作(注:每個dll只有一次,之后它就被緩存到(6)所設(shè)置的本地緩存中了)。如果嫌麻煩,這里也提供了一個簡單的方法,即勾選“Load symbols using the updated setting when this dialog is closed”,表明當這個設(shè)置窗口關(guān)閉的時候,立即下載所有的symbols(這將需要幾分鐘~幾十分鐘,根據(jù)網(wǎng)速決定),這樣就不用以后再手動Load symbols操作了。 

      通過以上的設(shè)置后,在調(diào)試程序的時候就可以進入框架的源代碼了。通過例子看一下,創(chuàng)建這個工程,并設(shè)置個斷點。運行程序到斷點停止時,到調(diào)用堆棧窗口(CTRL ALT C)右鍵單擊一個dll(如:System.Windows.Forms.dll),然后選擇“Load Symbols”,這樣會給System.Windows.Forms程序集加載符號。注意:如果在配置過程中采用了當時一次性下載了所有的symbols的話,這里的Load Symbols可以省略不做。

      現(xiàn)在可以查看代碼了。你可以Step In(F11)上面的的代碼行,在第一次進入代碼的時候,我們會顯示EULA,點擊ACCEPT,然后這個源代碼就會下載下來,可以調(diào)試。net框架源代碼了。 

      通過這種方式查看的源代碼并非全部,這次發(fā)布的版本中包含的命名空間有:

      以下為引用的內(nèi)容:

      ◆System
      ◆System.CodeDom
      ◆System.Collections
      ◆System.ComponentModel
      ◆System.Data
      ◆System.Diagnostics
      ◆System.Drawing
      ◆System.Globalization
      ◆System.IO
      ◆System.Net
      ◆System.Reflection
      ◆System.Runtime
      ◆System.Security
      ◆System.Text
      ◆System.Threading
      ◆System.Web
      ◆System.Web.Extensions
      ◆System.Windows
      ◆System.Windows.Forms
      ◆System.Xml

      錯誤修正:

      以中斷模式或運行模式顯示“調(diào)用堆棧”窗口

      在“調(diào)試”菜單中選擇“窗口”,然后單擊“調(diào)用堆棧”。

      或者Ctrl D,C 通過這種方式查看的源代碼并非全部,這次發(fā)布的版本中包含的命名空間有:
      ◆System
      ◆System.CodeDom
      ◆System.Collections
      ◆System.ComponentModel
      ◆System.Data
      ◆System.Diagnostics
      ◆System.Drawing
      ◆System.Globalization
      ◆System.IO
      ◆System.Net
      ◆System.Reflection
      ◆System.Runtime
      ◆System.Security
      ◆System.Text
      ◆System.Threading
      ◆System.Web
      ◆System.Web.Extensions
      ◆System.Windows
      ◆System.Windows.Forms
      ◆System.Xml

      現(xiàn)在可以查看代碼了。你可以Step In(F11)上面的的代碼行,在第一次進入代碼的時候,我們會顯示EULA,點擊ACCEPT,然后這個源代碼就會下載下來,可以調(diào)試。net框架源代碼了。
       

      分享:談Asp.net多層架構(gòu)中的變量引用與傳遞
      Asp.net的多層架構(gòu)主要是為了解決數(shù)據(jù)層,邏輯層,表示層等之間的關(guān)系。我的做法是這樣的:首先建立一個DataCore的基類。基類里面封裝了一些低層的數(shù)據(jù)庫的基本操作,比如說數(shù)據(jù)庫聯(lián)接,調(diào)

      來源:模板無憂//所屬分類:.Net教程/更新時間:2009-09-08
      相關(guān).Net教程