共用方式為


選項、文本編輯器、C#、進階

使用 [ 進階 選項] 頁面來修改編輯器格式設定、程式代碼重構,以及 C# 的 XML 檔批注。 若要存取此選項頁面,請選擇 [工具>選項],然後選擇 [文本編輯器>C#>進階]。

備註

並非所有選項都列在這裡。

分析

  • 執行 ... 的背景程式代碼分析

    請選擇下列其中一個選項。

    選項 說明
    沒有 所有分析器和對應的程式代碼修正都會停用。

    編譯程式診斷和對應的程式代碼修正會在 所有開啟 的文件上啟用。
    目前檔案 (預設值) 所有分析器只會在目前使用中檔上執行。

    所有 開啟 的文件都會啟用編譯程序診斷。
    開啟檔 所有開啟的文件都會啟用 所有 分析器和編譯程序診斷。
    整個解決方案 解決方案 中的所有 文件都會啟用所有分析器和編譯程式診斷,無論是開啟還是關閉。

Using 指示詞

  • 使用 排序時,請先放置 'System' 指示詞

    選取時,按下滑鼠右鍵功能表中的 [移除] 和 [排序 Usings ] 命令會排序 using 指示詞,並將 'System' 命名空間放在清單頂端。

    排序之前:

    using AutoMapper;
    using FluentValidation;
    using System.Collections.Generic;
    using System.Linq;
    using Newtonsoft.Json;
    using System;
    

    排序之後:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using AutoMapper;
    using FluentValidation;
    using Newtonsoft.Json;
    
  • 分隔 using 指示詞群組

    選取時,按下滑鼠右鍵功能表中的 Remove and Sort Usings 命令會藉由在具有相同根命名空間的指示詞群組之間插入空行來分隔 using 指示詞。

    排序之前:

    using AutoMapper;
    using FluentValidation;
    using System.Collections.Generic;
    using System.Linq;
    using Newtonsoft.Json;
    using System;
    

    排序之後:

    using AutoMapper;
    
    using FluentValidation;
    
    using Newtonsoft.Json;
    
    using System;
    using System.Collections.Generic;
    using System.Linq;
    
  • 建議針對 .NET Framework 元件中的類型使用

  • 針對 NuGet 套件中的類型建議使用

    選取這些選項時,可以使用 快速動作 來安裝 NuGet 套件,並新增 using 未參考類型的指示詞。

    在 Visual Studio 中安裝 NuGet 套件的快速動作

  • 在貼上新增遺漏 using 指示詞

    選取此選項時,當您將類型貼到檔案時, using 指示詞會自動新增至您的程式代碼。

突出

  • 反白顯示游標下符號的參考

    當游標位於符號內,或當您按兩下符號時,就會反白顯示程式代碼檔案中該符號的所有實例。

概述

  • 開啟檔案時輸入大綱模式

    選取時,會自動概述程式碼檔案,這會建立可折疊的程式代碼區塊。 第一次開啟檔案時,#regions 區塊和非作用中的程序代碼區塊折疊。

  • 顯示程式行分隔符

    文字編輯器會指出程式的視覺範圍。 在下表所欄位置的項目 .cs 來源檔案中繪製線條:

    .cs來源檔案中的位置 線條位置的範例
    在區塊宣告建構關閉之後 - 在類別、結構、模組、介面或列舉的結尾
    - 在屬性、函式或子之後
    - 不在屬性中的 get 和 set 子句之間
    在一組單行建構之後 - 在匯入語句之後,在類別檔案中的類型定義之前
    - 在類別中宣告變數之後,在任何程式之前
    單行宣告之後 (非區塊層級宣告) - 遵循匯入語句、繼承語句、變數宣告、事件宣告、委派宣告和 DLL 宣告語句

區塊結構參考線

選取這些複選框,以顯示程式代碼中大括弧 ({}) 之間的虛線垂直線。 然後,您可以輕鬆地查看宣告層級和程式代碼層級建構的個別程式代碼區塊。

評論

提取方法

  • 不要在自定義結構上放置 ref 或 out

    取消核取此複選框,藉由在將表達式擷取至方法呼叫時,重新參考現有的結構物件,以避免有力地非預期地複製結構。

    範例

    您的程式代碼中應該有下列內容 classstruct 存在:

    public struct CustomStruct
    {
        private int Count;
    
        public int Bump => ++Count;
    }
    
    public class CustomClass
    {
        public void DoIt()
        {
           CustomStruct cs = new CustomStruct();
           int i = 0;
    
           i += cs.Bump;   // select this line
        }
    }
    

    如果未 核取 [不要在自定義結構上放置 ref 或 out] 選項,則 “Extract 方法” 功能會產生下列專案:

    public class CustomClass
    {
        public void DoIt()
        {
           CustomStruct cs = new CustomStruct();
           int i = 0;
    
           NewMethod(ref cs, ref i);
        }
    
        private static void NewMethod(ref CustomStruct cs, ref int i)
           => i += cs.Bump;
    }
    

    如果 取 [不要在自定義結構上放置 ref 或 out] 選項,則 “Extract 方法” 功能會產生下列專案:

    public class CustomClass
    {
        public void DoIt()
        {
           CustomStruct cs = new CustomStruct();
           int i = 0;
    
           i = NewMethod(cs, i);
        }
    
        private static int NewMethod(CustomStruct cs, int i)
        {
           i += cs.Bump;
           return i;
        }
    }
    

內嵌提示

  • 內嵌參數名稱提示

    選取時,會在函數調用中每個自變數之前,插入常值、轉換常值和物件具現化的參數名稱提示。

    CSharp 的內嵌參數名稱提示

  • 內嵌類型提示

    選取時,會插入具有推斷型別和 Lambda 參數類型的變數類型提示。

    CSharp 的內嵌類型提示

繼承邊界

  • 選取時,將圖示新增至代表程式代碼實作和覆寫的邊界。 按兩下 [繼承邊界] 圖示會顯示您可以選取以流覽至的繼承選項。

    繼承邊界

另請參閱