Share via


Converter typeof em nameof

Esta refatoração aplica-se a:

  • C#
  • Visual Basic

O quê: permite converter uma instância de typeof(<QualifiedType>).Name em nameof(<QualifiedType>) em C# e uma instância de GetType(<QualifiedType>).Name em NameOf(<QualifiedType>) no Visual Basic.

Quando: todas as instâncias de typeof(<QualifiedType>).Name em que someType não é um tipo genérico. Essa exclusão é necessária porque esse caso não retorna o mesmo valor de cadeia de caracteres que nameof(<QualifiedType>). O mesmo vale para a instância do Visual Basic.

Porque: usar nameof em vez do nome de type evita a reflexão envolvida na recuperação de um objeto type e é uma maneira mais pragmática de escrevê-lo.

Como fazer

  1. Coloque o cursor dentro da instância typeof(<QualifiedType>).Name para C# ou de GetType(<QualifiedType>).Name no Visual Basic.

  2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

  3. Selecione uma das seguintes opções:

    • C#
      Selecione Converter 'typeof' em '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
      Selecione Converter 'GetType' em 'NameOf': Screenshot of the Quick Actions and Refactorings menu in Visual Studio with Convert 'GetType' to 'NameOf' selected and Visual Basic code changes shown.

Confira também