將 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
物件時所涉及的反射,而且是一種更實用的編寫方式。
操作方式
將游標放在 C# 中的
typeof(<QualifiedType>).Name
實例中,或 Visual Basic 中的GetType(<QualifiedType>).Name
中。按下 Ctrl+.,以觸發 [快速動作與重構] 功能表。
選取下列其中一個選項:
C#
選取 [將 'typeof' 轉換為 'nameof':]Visual Basic
選取 [將 'GetType' 轉換為 'NameOf':]