檢視型別與成員的定義

開發人員經常需要檢視他們在程式碼中使用的型別或類別成員的原始程式碼定義。 Visual Studio 中的 [移至定義] 和 [查看定義] 功能可讓您輕鬆檢視型別或成員的定義。 如果原始程式碼無法使用,Visual Studio 會改為顯示中繼資料。

移至定義

使用 [移至定義] 功能時,Visual Studio 會尋找所選型別或成員的原始程式碼。 如果原始程式碼位於不同的檔案,檔案就會在新視窗開啟。 Visual Studio 會變更目前的焦點,醒目顯示相關的項目。

螢幕擷取畫面所示為 [移至定義] 在新視窗中針對所選符號開啟來源檔案的方式。

您有數種方式可以存取 [移至定義]

  • 將游標置於符號名稱內,然後使用 F12 功能鍵

  • 以滑鼠右鍵按一下符號名稱,然後選取 [移至定義]

  • 在符號名稱上使用 Ctrl+Click 鍵盤/滑鼠快捷鍵

變更動作捷徑

您可以在 [工具]>[選項]>[文字編輯器]>[一般] 使用 [啟用滑鼠點擊以執行移至定義] 選項來啟用或停用 [移至定義]Ctrl+Click 捷徑。

若要變更捷徑的輔助按鍵,請展開 [使用輔助按鍵] 下拉式清單,然後選取 Ctrl (預設)、AltCtrl+Alt

[移至定義] 功能的 [文字編輯器] 選項螢幕擷取畫面,其中包括 [使用輔助按鍵] 設定。

查看定義

[查看定義] 功能可讓您預覽型別的定義,不需要變更編輯器中目前檔案的焦點。 Visual Studio 會開啟原始程式檔的壓縮 預覽 檢視視窗,並搭配您目前的檔案。 您可以變更 [查看] 檢視視窗的大小,藉此查看更多來源定義:

螢幕擷取畫面所示為 [查看定義] 在目前檢視中的查看檢視視窗針對所選符號開啟來源的方式。

關閉 [查看] 檢視視窗時,目前的程式碼檔案會在編輯器中保持開啟。

您有數種方式可以存取 [查看定義]

  • 將游標置於符號名稱內,然後選取Alt+F12 功能鍵

  • 以滑鼠右鍵按一下符號名稱,然後選取 [查看定義]

  • 在符號名稱上使用 Ctrl+Click 鍵盤/滑鼠快捷鍵

變更動作捷徑

您可以設定 Ctrl+Click 鍵盤/滑鼠捷徑,讓 [移至定義] 在 [查看] 檢視中開啟原始程式碼檔案。 在 [工具]>[選項]>[文字編輯器]>[一般] 使用 [在查看檢視中開啟定義]

[查看定義] 功能的 [文字編輯器] 選項螢幕擷取畫面。

針對多個檔案使用階層連結路徑

如果您在開啟的 [查看] 檢視視窗查看其他定義,您就會啟動階層連結路徑。 您可以使用 [查看] 檢視視窗上方的圓圈和箭號,沿路徑向前和向後查看:

螢幕擷取畫面所示為 [查看定義] 中開啟的原始程式碼檔案階層連結路徑,以及往前查看的選項。

關閉 [查看] 檢視視窗時,Visual Studio 會關閉階層連結路徑中所有開啟的檔案。 如需詳細資訊,請參閱使用「查看定義 (Alt+F12)」檢視和編輯程式碼

中繼資料視為原始程式碼 (C#)

如果您嘗試查看 C# 型別或成員的定義,且原始程式碼無法使用,Visual Studio 會改為顯示符號的中繼資料。 您可以查看所宣告的型別和成員,但無法查看其實作。 視窗索引標籤包含符號名稱,後面接著 [來自中繼資料]

螢幕擷取畫面所示為 Visual Studio 只會在所選符號的原始程式碼無法使用時,才會顯示中繼資料。

注意

如果您嘗試檢視內部型別或成員的定義 ,則無論參照的組件是否為 friend,Visual Studio 都不會將中繼資料顯示為原始程式碼。 如需詳細資訊,請參閱 Friend 組件

檢視反向編譯來源的定義 (C#)

如果所選 C# 符號的原始程式碼無法使用,您可以設定選項來查看反向編譯的來源定義,而不是中繼資料。 在 [工具]>[選項]>[文字編輯器]>[C#]>[進階] 使用 [啟用巡覽至反向編譯的原始碼] 選項。

螢幕擷取畫面所示為 Visual Studio 在所選符號的定義無法取得時,會顯示反向編譯的來源程式碼。

注意

Visual Studio 會使用 ILSpy 反向編譯來重新建構方法主體。 第一次存取此功能時,您必須同意有關軟體授權及著作權與商標法相關的免責聲明。