Desenvolvimento .NET

.NET CSharp

Como alterar todos os namespaces para escopo de arquivo

Introdução

O C# 10 trouxe algumas melhorias e facilidades para o desenvolvedor, e um desses novos recursos disponíveis é o namespace com escopo de arquivo, o objetivo é remover um nível de identação dos arquivos quando os mesmos possuem apenas um namespace, reduzindo a rolagem horizontal e vertical tornando o código mais legível.

Recentemente me deparei com a necessidade de alterar os arquivos de uma solução com vários projetos, e sinceramente fazer isso arquivo por arquivo não é nem um pouco produtivo.
Existe uma forma de alterar todos os arquivos apenas com um comando e isso pode ser feito no Visual Studio ou Visual Studio Code.


Configurações necessárias

Precisamos usar o C# 10 em nossos projetos, podemos configurar de forma explícita alterando as propriedades do projeto no arquivo MeuProjeto.csproj

Em seguida, caso não exista, vamos criar uma arquivo .editorconfig na raiz da solução e adicionar a seguinte instrução:

Visual Studio

Após as configurações necessárias o Visual Studio vai sugerir melhorias no código, podemos selecionar a opção Solution para aplicar a mudança em todos os arquivos da solução.

img-1

Visual Studio Code

Se você estiver utilizando o VS Code pode utilizar o dotnet cli com o comando dotnet format.

dotnet tool update --global dotnet-format
dotnet format MySolution.sln --severity info --diagnostics=IDE0161

O comando dotnet tool update --global dotnet-format atualiza a ferramenta dotnet-format de forma global, e o comando dotnet format MySolution.sln --severity info --diagnostics=IDE0161 aplica a modificação dos namespace em toda a solução.

Conclusão

A indentação e organização do código é uma boa prática que facilita o entendimento e a manutenção do código. Essa foi uma dica rápida para atualizar o namespace de todos os arquivos de uma solução com vários projetos. Para mais informações sobre as novidades do C# 10 e para saber mais sobre o comando dotnet format segue os links da documentação oficial.

dotnet-format

Novidades no C# 10

Artigos Recomendados

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *