ASP.NET Core - Como instalar templates - IdentityServer4

Estamos habituados a abrir o Visual Studio > File > New > Project e através de templates pré-configurados iniciarmos a criação de uma class library, projeto web, react, console, etc. E para que tudo isso aconteça é necessário que os templates dos projetos existam.
Por conta disso, é possível também utilizarmos esses templates através da CLI do dotnet utilizando o prompt de comando ou até mesmo o powershell.
Através do comando a seguir é possível listar todos os templates disponíveis do dotnet:

dotnet new --list

Resultado do comando

É comum em posts sugerir a utilização de comandos para criação dos projetos, considerando a imagem anterior, podemos usar a CLI do dotnet para criar um projeto do tipo Console Application com o comando a seguir, lembrando sempre de usar o nome do template conforme os nomes exibidos na coluna "Short Name".

dotnet new console

Em um dos posts anteriores .NET Core - Definir o sdk do runtime de execução vimos mais informações sobre SDK e sobre a CLI. Especificamente nele, vimos a criação e a função do global.json e para que não seja um espanto a criação do arquivo é feita com o uso de um template. Revisite a imagem anteior que é possível encontrar o "Short Name" dele.

Templates do IdentityServer4

O IdentityServer4 (vamos falar dele em outra oportunidade), possui templates que não estão contemplado na instalação padrão da CLI ou do Visual Studio, para termos outras opções de uso dos templates é possível instalá-los e isso é possível através do comando a seguir.

dotnet new -i identityserver4.templates

Depois de executado, confira a lista novamente e você perceberá as novas formas de iniciar um projeto do IdentityServer conforme as opções da imagem a seguir.

Templates do IdentityServer4

Detalhes

Aqui vão algumas informações úteis:

  • Sempre que houver uma atualização do Visual Studio, os templates adicionais são apagados;
  • Os templates instalados não aparecem na interface File > New > Project
  • Na utilização do template, o csproj é criado com o nome do diretório onde você está executando o comando;
  • Nenhuma solução é criada, então você precisa adicionar a sua solução o csproj que acabou de ser criado.