適用於 C# 開發人員的 Visual Studio 生產力指南
瞭解 Visual Studio 如何讓 .NET 使用 C# 的開發人員 比以往更有生產力。 利用我們的效能和生產力改進功能,例如導航至反編譯的組件、輸入時的變數名稱建議、測試總管中的階層檢視、移至全部(Ctrl+T)以導航至檔案/類型/成員/符號宣告,智慧型 例外協助工具,程式代碼樣式設定和強制執行,以及許多重構和程式代碼修正。
如需 .NET、C++和其他語言的一般生產力,請參閱 Visual Studio Productivity 指南。 如需實用鍵盤快捷方式的相關信息,請參閱 生產力快捷方式。 如需命令快捷方式的完整清單,請參閱 預設鍵盤快捷方式。
使用不同的編輯器中的鍵盤快捷方式
如果您是來自另一個 IDE 或編碼環境,您可以將鍵盤配置變更為 Visual Studio Code 或 ReSharper (Visual Studio):
某些延伸模組也提供鍵盤設定:
- 適用於 Visual Studio 的 熱鍵(ReSharper/IntelliJ)
- Emacs 模擬
- VSVim
以下是熱門的Visual Studio 快捷方式:
快捷方式 (所有設定檔) | 命令 | 描述 |
---|---|---|
Ctrl+T | 前往全部 | 導覽至任何檔案、類型、成員或符號宣告 |
F12 (也 Ctrl+點擊) | 移至定義 | 導航到符號定義的位置 |
Ctrl+F12 | 移至實作 | 從基底類型或成員導航到其各種實作 |
Shift+F12 | 尋找所有參考 | 查看所有符號或文字參考 |
Alt+Home | 前往基地 | 瀏覽繼承鏈結 |
Ctrl+。 (也 Alt+在 C# 配置檔中輸入) | 快速操作和重構 | 查看哪些程式碼修正、生成、重構或其他快速動作可在游標位置或程式碼選取上使用 |
Ctrl+D | 重複行 | 重複游標所在的程式碼行 |
Shift+Alt++/- | 展開/收縮選取 | 在編輯器中展開或收縮目前的選取範圍 |
Shift + Alt + 。 | 插入下一個相符插入號 | 在符合目前選取範圍的下一個位置新增選取範圍和插入號 |
Ctrl+Q | 搜尋 | 搜尋所有 Visual Studio 設定 |
F5 | 開始偵錯 | 開始對應用程式進行偵錯 |
Ctrl+F5 | 執行但不偵錯 | 在本機執行應用程式而不進行偵錯 |
Ctrl+K、D (Default Profile)或 Ctrl+E、D (C# 配置檔) | 文件格式化 | 根據您的換行符、間距和縮排設定,修正檔案中的格式錯誤。 |
Ctrl+\,Ctrl+E (預設配置檔)或 Ctrl+W,E (C# 配置檔) | 檢視錯誤清單 | 查看檔案、項目或解決方案中的所有錯誤 |
Alt + PgUp/PgDn | 移至下一期/上一期 | 導航至文件中的上一個/下一個錯誤、警告、建議 |
Ctrl+K/ | 切換單行批註/取消批注 | 此命令會根據您的選取專案是否已加上批註,新增或移除單行批注 |
Ctrl+Shift+/ | 切換區塊批註/取消批注 | 此命令會根據您選取的專案來新增或移除封鎖批注 |
注意
某些延伸模組會解除系結預設的Visual Studio 金鑰系結。 您可以移至 [工具]>[匯入和匯出設定]>[重設所有設定] 或 [工具]>[選項]>[鍵盤]>[重設],將密鑰系結還原為預設值。
如需鍵盤快捷方式和命令的詳細資訊,請參閱 生產力快捷方式。 或者,請參閱 Visual Studio 中的 鍵盤快捷方式,以取得完整的清單以及可下載的速查表。
快速流覽至檔案或類型
Visual Studio 具有稱為 Go To All 的功能,可用來快速跳至任何檔案、類型、成員或符號宣告。 若要從選單列開啟它,請選擇 [編輯]>[移至]>[移至所有]。 或者,您可以使用 Ctrl+T 鍵盤快捷方式來開啟它。
程式代碼編輯器右上方會顯示一個小視窗。
您可以使用此功能來執行下列動作:
- 使用 齒輪 圖示,變更其搜尋列的位置,或關閉即時導覽預覽。
- 使用
t mytype
之類的語法來篩選結果。 - 將搜尋範圍限定為目前的檔。
- 支援駱駝式大小寫比對。
如需 移至所有的詳細資訊,請參閱 使用 [移至] 命令尋找程式代碼。
強制程式碼樣式規則
您可以使用 EditorConfig 檔案來編纂編碼慣例,並讓它們與您的來源一起移動。
在 Visual StudioCode style enforcement in Visual Studio中強制執行程式代碼樣式
- 新增預設或 。從 [方案總管] 的 [新增內容] 功能表飛出 , 選擇 >新專案],將 NET 樣式 EditorConfig 檔案新增至專案。 然後,在 [新增專案] 對話框中,搜尋 “editorconfig”。 選取其中一個 editorconfig File 項目範本,然後選擇 新增。
- 在 Tools>>>>中,自動建立 .editorconfig 檔案。
程式代碼推斷功能IntelliCode for Visual Studio 會從現有的程式代碼推斷您的程式代碼樣式。 然後,它會使用已定義的程式代碼樣式喜好設定,建立無空的EditorConfig檔案。
直接透過編輯器設定程式碼樣式規則的嚴重性層級。 如果您沒有 .editorconfig 檔案,Visual Studio 會為您產生一個檔案。 將游標放在錯誤、警告或建議上,然後輸入 Ctrl+。 開啟 快速動作和重構 功能表。 選取 [] 設定或隱藏 [] 的問題。 然後選取規則,然後選擇您想要針對該規則設定的嚴重性層級。 此動作會使用規則的新嚴重性來更新您現有的EditorConfig。
請參閱 .NET 程式代碼樣式規則選項 檔,其中也包含完整的EditorConfig 檔案範例。
程式碼清理
Visual Studio 透過 程式代碼清除 功能,提供程式碼檔案的隨選格式設定,包括程式代碼樣式喜好設定。 若要執行程式代碼清除,請選擇編輯器底部的掃把圖示,或按 ctrl +Ctrl Ctrl+E。
您也可以跨整個專案或方案執行程式代碼清除。 以滑鼠右鍵按兩下 [方案總管] 中的專案或方案名稱,選取 [分析] 和 [程式代碼清除],然後選取 [執行程式代碼清除] 。
除了將檔案格式化成空格、縮排等等之外,程式碼清理 也會套用選取的程式代碼樣式。 每個程式代碼樣式的喜好設定會從 EditorConfig 檔案讀取(如果您有該專案的檔案),或者從 [選項] 對話框中的 程式代碼樣式設定 中讀取。
重構和程式代碼修正
Visual Studio 隨附許多重構、程式代碼產生動作和程式代碼修正。 紅色波浪線代表錯誤、綠色波浪線代表警告,而三個灰色點代表程式代碼建議。 您可以選取燈泡或螺絲起子圖示,或按 ctrl +來存取程式代碼修正。 或 Alt+Enter。 每個修正都隨附預覽視窗,其中顯示修正程序運作方式的即時程式代碼差異。
熱門的快速修正和重構包括:
- 重新命名
- Extract 方法
- 變更方法簽章
- 產生建構函式
- 產生方法
- 將類型移至檔案
- 新增 Null-Check
- 新增參數
- 移除不必要的 Using
- Foreach 迴圈轉為 LINQ 查詢或 LINQ 方法
- 提升成員
您可以 安裝 .NET 分析器 來標記程式代碼問題。 或者,透過 Roslyn 分析器撰寫自己的重構或程式碼修正。
數個社群成員已撰寫免費延伸模組,以新增更多程式代碼檢查:
Visual StudioRefactorings in Visual Studio中的重構
尋找使用方式、移至實作,然後瀏覽至反編譯程序集
Visual Studio 有許多功能可協助您搜尋和 瀏覽程式碼。
特徵 | 捷徑 | 詳細數據/改善 |
---|---|---|
尋找所有參考 | Shift+F12 | 結果會以色彩標示,並可依專案、定義和參考類型分組,例如讀取或寫入。 您也可以「鎖定」結果。 |
移至實作 | Ctrl+F12 | 您可以在 override 關鍵字上使用「移至定義」來導覽至覆寫的成員 |
移至定義 | F12 或 Ctrl+點擊 | 當按住 Ctrl 點擊時,導航至定義 |
查看定義 | Alt+F12 | 定義的內嵌檢視 |
結構可視化工具 | 大括弧之間的灰色、虛線 | 將滑鼠移至以查看您的程式碼結構 |
導覽至反編譯的程式集 | F12 或 Ctrl+點擊 | 開啟功能以巡覽至外部來源(使用 ILSpy 反編譯):[工具]>[選項]>[文字編輯器]>[C#]>[進階]>[啟用至反編譯來源的巡覽]。 |
改善 IntelliSense
使用 IntelliCode for Visual Studio 取得內容感知程序代碼完成,而不只是依字母順序排列的清單。
AI 協助
如果您使用 Copilot,請取得 AI 協助以 協助您撰寫和偵錯程式代碼。
單元測試
我們對測試體驗進行了許多改進。 您可以使用 MSTest(MSTest v1 或 MSTest v2)、NUnit和 XUnit 測試架構進行測試。
測試探索器 測試探索速度很快。
在 測試總管 中,使用 階層式排序組織您的測試。
Visual StudioHierarchy view for Text Explorer in Visual Studio的文字總管階層檢視
- 即時單元測試 持續執行受程式代碼變更和更新內嵌編輯器圖示影響的測試,讓您知道測試的狀態。 包含或排除您即時測試集中的特定測試或測試專案。 (僅限 Visual Studio Enterprise 版。)
如需詳細資訊,請參閱 單元測試基本概念。
除錯
Visual Studio 包含下列偵錯功能:
- 在 Watch、Autos和 局部變數 視窗中搜尋字串的能力。
- 選擇,該功能允許您將滑鼠停留在程式碼行旁邊,然後點擊出現的綠色「播放」圖示,程序將運行至該行之前。
-
例外狀況協助程式,它會將最重要的資訊放在對話框中的最上層,例如,哪一個變數在
null
中是NullReferenceException
。 - 倒退偵錯,這功能可讓您回溯至先前的斷點或步驟,並檢視應用程式先前的狀態。
- 快照偵錯,可以讓您在例外狀況發生時調查線上 Web 應用程式的狀態(必須在 Azure 上)。
Visual Studio 中的例外狀況協助程式
版本控制
在 Visual Studio 2022 中,您可以直接從 IDE 使用 Git 來建立、檢閱、簽出和執行提取要求。 若要深入瞭解,請參閱 Visual Studio 如何使用 Git輕鬆控制版本。
您可以使用 Git 或 TFVC,在 Visual Studio 中儲存和更新程式代碼。
在 Visual Studio 2019 16.8 版和更新版本中,您可以從 IDE 內直接使用 Git,來建立、檢閱、簽出和執行提取要求。
在 Visual Studio 2019 16.7 版和更早版本中,安裝 Visual Studio 擴充功能 提取要求,以建立、檢閱、取出和執行提取要求,而不需要離開 Visual Studio。
在 Team Explorer 中組織您的本機變更,並使用狀態列來追蹤擱置的提交和變更。
使用適用於 Visual Studio 擴充功能的 持續傳遞工具,為 Visual Studio 內的 ASP.NET 項目設定持續整合和傳遞。
我應該知道哪些其他功能?
以下是編輯器和生產力功能的清單,可讓撰寫程式代碼更有效率。 某些功能可能需要啟用,因為它們預設為關閉。
特徵 | 詳細資訊 | 如何啟用 |
---|---|---|
在方案總管中尋找檔案 | 在 [方案總管] 中標示使用中的檔案 | 工具>選項>專案和方案>在方案總管中追蹤使用中專案 |
針對參考組件和 NuGet 套件中的類型新增使用指令 | 顯示錯誤燈泡並提供修正建議,以安裝未參考類型的 NuGet 套件。 | 工具>選項>文字編輯器>C#>進階>建議對參考元件中的類型 和 針對 NuGet 套件中的類型建議使用方式 |
啟用完整解決方案分析 | 在 [錯誤清單] 中查看解決方案中的所有錯誤 | 工具>選項>文字編輯器>C#>進階>啟用完整解決方案分析 |
啟用瀏覽至反編譯來源 | 允許對來自外部來源的類型/成員進行“前往定義”操作,並使用 ILSpy 反編譯工具來顯示方法的內容。 | 工具>選項>文字編輯器>C#>進階>啟用瀏覽至反編譯來源 |
完成/建議模式 | 變更 IntelliSense中的完成行為。 具有 IntelliJ 背景的開發人員通常會在這裡使用非預設設定。 | 編輯>IntelliSense>切換完成模式(或在編輯器中 按 Ctrl+Alt+空格鍵) |
CodeLens | 在編輯器中顯示程式代碼參考資訊和變更歷程記錄。 (Visual Studio Community 版本不提供原始檔控制 CodeLens 指標。 | 工具>選項>文字編輯器>所有語言>CodeLens |
代碼段 | 協助生成常見的樣板代碼 | 輸入代碼段名稱,然後按 Tab 兩次。 |
貼上 JSON 或 XML 作為類別 | 將任何 JSON 或 XML 文字片段複製到剪貼板,並將它貼上轉換為強型別的 .NET 類別後,粘貼到任何 C# 程式代碼檔案中。 | 編輯>貼上特殊>貼上 JSON 作為類別(或 貼上 XML 作為類別) |
複製和調整縮排 | 將程式代碼從 Visual Studio 複製到另一個程式(Outlook、Teams 等),而不需要在貼上程式代碼之後手動修正縮排。 可在 Visual Studio 2022 17.7 版 及更新版本取得。 |