typeof 轉換為 nameof

此重構適用於:

  • C#
  • Visual Basic

內容: 讓您在 C# 中將 typeof(<QualifiedType>).Name 的實例轉換為 nameof(<QualifiedType>),以及在 Visual Basic 中將 GetType(<QualifiedType>).Name 的實例轉換為 NameOf(<QualifiedType>)

時機:someType 不是泛型類型的所有 typeof(<QualifiedType>).Name 實例。 此排除是必要的,因為這種情況不會傳回與 nameof(<QualifiedType>) 相同的字串值。 對於 Visual Basic 實例也是如此。

原因: 使用 nameof 而不是 type 的名稱可以避免在擷取 type 物件時所涉及的反射,而且是一種更實用的編寫方式。

操作方式

  1. 將游標放在 C# 中的 typeof(<QualifiedType>).Name 實例中,或 Visual Basic 中的 GetType(<QualifiedType>).Name 中。

  2. 按下 Ctrl+.,以觸發 [快速動作與重構] 功能表。

  3. 選取下列其中一個選項:

    • C#
      選取 [將 'typeof' 轉換為 'nameof':]Screenshot of the Quick Actions and Refactorings menu in Visual Studio with Convert 'typeof' to 'nameof' selected, and C# code changes shown.

    • Visual Basic
      選取 [將 'GetType' 轉換為 'NameOf':]Screenshot of the Quick Actions and Refactorings menu in Visual Studio with Convert 'GetType' to 'NameOf' selected and Visual Basic code changes shown.

另請參閱