ASP.NET Core 2.0: Preview 2 e mais algumas novidades previstas
O objetivo deste artigo é abordar o lançamento do Preview 2 do ASP.NET Core 2.0, além de algumas das novidades previstas para esta versão da plataforma.
E por falar em tecnologias Microsoft, não deixem também de acompanhar o Azure Tech Nights, que acontecerá entre os dias 24 de Julho e 2 de Agosto de 2017. Será um evento NOTURNO, ONLINE e GRATUITO promovido pelo Canal .NET, com apresentações focadas no Microsoft Azure e cobrindo temas como microserviços, Bots, desenvolvimento Web e mobile, bancos de dados, Business Intelligence, NoSQL, infraestrutura, Containers e muito mais.
Entre os palestrantes teremos MVPs Microsoft, MTACs e Especialistas de Mercado.
Para efetuar a inscrição acessem este link.
A grade com as palestras e outras informações podem ser encontradas no site oficial do Azure Tech Nights.
Introdução
A versão 2.0 do .NET Core está com seu lançamento oficial previsto para o período compreendido entre Julho e Setembro/2017 (conforme Roadmap), sendo que este projeto também engloba tecnologias como o ASP.NET Core 2.0 e o Entity Framework Core 2.0. Abordei inclusive algumas das novidades esperadas para o ASP.NET Core em outro artigo:
ASP.NET Core 2.0: primeiros passos e algumas novidades previstas
No dia 28/06 a Microsoft disponibilizou oficialmente o Preview 2 do .NET Core 2.0 para testes. Esta atualização contempla correções, além de melhorias em termos de qualidade e performance. O anúncio sobre este release pode ser encontrado em:
Announcing .NET Core 2.0 Preview 2
Ao longo das próximas seção trarei orientações sobre o uso do ASP.NET Core 2.0 Preview 2, descrevendo ainda algumas das novidades e mudanças previstas para a plataforma.
Como utilizar o Preview 2 do ASP.NET Core 2.0?
Para realizar testes com esta nova versão do ASP.NET Core 2.0 será necessário instalar o Preview 2 do .NET Core 2.0, acessando para isto o seguinte link:
Esta atualização substituirá a instalação do Preview 1, caso esta última tenha sido previamente utilizada.
Para se certificar de que o Preview 2 foi corretamente instalado digite a seguinte linha de comando:
dotnet --version
Na imagem a seguir é possível observar o resultado desta última ação, atestando a implantação com sucesso deste release (.NET Core 2.0 Preview 2):
O desenvolvimento com ASP.NET Core 2.0 pode ser realizado a partir a partir do Visual Studio 2017 Update 15.3 (ainda em Preview), do Visual Studio Code ou do Visual Studio for Mac. O .NET Core 2.0 conta atualmente com instalações para Windows, macOS e diversas distribuições Linux, além de suporte a containers Docker.
Novos templates
Para criar um novo projeto baseado no ASP.NET Core 2.0 no Visual Studio 2017 Update 15.3 vá até a seção .NET Core, selecionando em seguida ASP.NET Core Web Application (.NET Core):
Ao se confirmar esta ação aparecerão os templates disponíveis. Além de projetos que empregam Razor Pages (opção disponível desde o Preview 1), temos como novas alternativas a criação de projetos baseados em Angular, React.js e React.js + Redux:
Estes templates também aparecerão ao se utilizar o .NET Core Command-Line Interface (CLI):
Configurações de web host
Até a versão 1.1 do ASP.NET Core as configurações de web host eram geradas automaticamente no método Main da classe Program, acionando operações como UseKestrel, UseContentRoot e UseIISIntegration:
Embora ainda disponíveis, ao se criar um novo projeto baseado na versão 2.0 estas funções serão substituídas pelo método CreateDefaultBuilder da classe WebHost (namespace Microsoft.AspNetCore).
A chamada ao método CreateDefaultBuilder acontecerá a partir da função BuildWebHost. Esta operação será então invocada via método Main:
Mudanças na classe Startup
As configurações definindo o uso do arquivo appSettings.json (e outros recursos contendo informações deste gênero) eram ativadas até o ASP.NET Core 1.1 no construtor da classe Startup, através de uma instância do tipo ConfigurationBuilder. Ao se criar um novo projeto o método Configure também continha instruções especificando o uso de um mecanismo de log via interface ILoggerFactory (namespace Microsoft.Extensions.Logging):
Ao se criar um novo projeto baseado no ASP.NET Core 2.0 será possível notar que uma referência baseada na interface IConfiguration (namespace Microsoft.Extensions.Configuration) foi repassada ao construtor da classe Startup. Além disso, percebe-se a ausência de uma instância de ILoggerFactory na declaração do método Configure:
E para finalizar, gostariam de saber mais sobre as novidades do .NET Core 2.0 e do .NET Standard 2.0? Não deixem de assistir então a gravação de um hangout realizado recentemente pelo Canal .NET sobre este assunto:
Deixo aqui ainda como referências um post com todos os conteúdos que venho produzindo sobre .NET Core, ASP.NET Core e C# 7.0:
Conteúdos gratuitos sobre ASP.NET Core, .NET Core e C# 7.0
E a playlist com os vídeos que produzi sobre ASP.NET Core para o Canal .NET: