Преобразование typeof
в nameof
Область применения этого рефакторинга:
- C#
- Visual Basic
Что: позволяет преобразовать экземпляр typeof(<QualifiedType>).Name
nameof(<QualifiedType>)
в C# и экземпляр GetType(<QualifiedType>).Name
NameOf(<QualifiedType>)
в Visual Basic.
Когда: все экземпляры typeof(<QualifiedType>).Name
, где someType
не является универсальным типом. Это исключение необходимо, так как в этом случае не возвращается то же строковое значение, что и nameof(<QualifiedType>)
. Это справедливо и для экземпляра Visual Basic.
Почему: использование nameof
вместо имени избегает отражения, связанного type
с извлечением type
объекта, и является более прагматичным способом его написания.
Практические советы
Поместите курсор в экземпляр
typeof(<QualifiedType>).Name
для C# или вGetType(<QualifiedType>).Name
для Visual Basic.Нажмите CTRL+., чтобы открыть меню Быстрые действия и рефакторинг.
Выберите один из следующих параметров:
C#
Выберите Convert 'typeof' to 'nameof':Visual Basic
Выберите Convert 'GetType' to 'NameOf':