Neste artigo veremos como migrar uma aplicação ASP .NET Core 2.0 para ASP .NET Core 2.1. |
A versão da ASP.NET Core 2.1 já está disponível e vem com novos recursos como HTTPS por padrão, HTTPClientFactory, SignalR e outros. Veja aqui.
Para obter informações completas e detalhadas sobre o assunto consulte a documentação oficial em : Migrar do ASP .NET Core 2.0 para ASP .NET Core 2.1
A seguir vou apresentar um roteiro básico para migrar aplicações ASP .NET Core 2.0 para a nova versão.
1- Atualizar o framework para .NET Core 2.1
Podemos também editar o arquivo de projeto .csproj clicando com o botão direito do mouse sobre o projeto e a seguir clicando em Edit <nome_projeto>.csproj.
A seguir altere <TargetFramework> para : <TargetFramework>netcoreapp2.1</TargetFramework>
2- Atualizar as referências aos pacotes
A ASP.NET Core 2.1 apresenta um novo meta-pacote chamado Microsoft.AspNetCore.App em substituição á referência Microsoft.AspNetCore.All.
Abaixo vemos o arquivo de projeto do projeto ASP .NET Core 2.0 usando a referência de pacote Microsoft.AspNetCore.All :
Precisamos atualizar as versões para os pacotes Microsoft.AspNetCore, Microsoft.Extensions e Microsoft.EntityFrameworkCore para a versão 2.1.0.
Além disso, temos que atualizar as versões dos elementos <DotNetCliToolReference> para qualquer pacote Microsoft.VisualStudio e/ou Microsoft.EntityFrameworkCore para a versão 2.1.0.
Abaixo
vemos o arquivo de projeto do projeto alterado para ASP .NET Core 2.1:
3- Remover referências aos elementos <DotNetCliToolReference> para os pacotes
Os pacotes a seguir agora são agrupados por padrão na CLI do .NET Core e não precisam ser instalados separadamente.
Você também pode, opcionalmente, remover o elemento <DotNetCliToolReference> para o pacote : Microsoft.VisualStudio.Web.CodeGeneration.Tools.
Nota: Se desejar você pode substituir essa ferramenta por uma versão instalada globalmente executando o comando: dotnet tool install -g dotnet-aspnet-codegenerator.
Abaixo vemos o arquivo de projeto com o elemento <DotNetCliToolReference> já removido:
Como o meu projeto usava o BrowserLink tive que incluir o pacote Microsoft.VisualStudio.Web.BrowserLink no projeto.
Nota: Podemos também simplesmente remover a linha que chama BrowserLink.
Esses são os ajustes básicos mais importantes mas dependendo do tipo da sua aplicação e dos pacotes que você esta utilizando talvez seja necessário realizar outras atualizações.
Fazendo outros ajustes...
4 - Alterando o arquivo Program.cs
Abaixo vemos o código do arquivo Program.cs da aplicação ASP .NET Core 2.0 :
Na ASP .NET Core 2.1 o comando BuildWebHost foi alterado para CreateWebHostBuilder. (A alteração não é obrigatório pois o código anterior ainda funciona)
Abaixo vemos o código atualizado para a versão 2.1 :
A interface IWebHostBuilder foi adicionada para dar suporte a uma nova infraestrutura de teste de integração.
5 - Habilitando o HTTPS
Para ativar o HTTPS, precisamos adicionar 2 middlewares ao método Configure.
Abra classe Startup.cs e navegue até o método Configure.
Inclua uma chamada para incluir o middleware HSTS após o middleware do manipulador de exceções: app.UseHsts();
A seguir adicione uma chamada para adicionar o middleware de redirecionamento HTTPS antes do middleware de arquivos estáticos: app.UseHttpsRedirection();
O protocolo HSTS força os clientes (navegadores da web) a interagir com o servidor por meio de conexões HTTPS.
O protocolo HSTS é normalmente usado em cenários de não desenvolvimento, portanto, o middleware UseHsTs() é adicionado na outra parte do código.
Após esses ajustes, precisamos ativar o SSL para o projeto.
Para fazer isso, clique com o botão direito do mouse no projeto e, em seguida em Properties;
Clique na tab Debug e marque a caixa de seleção “Enable SSL” e salve as alterações.
A seguier, adicione uma variável de ambiente chamada ASPNETCORE_HTTPS_PORT e defina seu valor para o número da porta exibido na URL na caixa de seleção "Enable SSL".
Calma que ainda não terminou....
Finalmente abra o arquivo launchSettings.json localizado em Properties.
No arquivo launchSettings.json, adicione uma nova propriedade “sslPort” na seção “iisSettings”/”iisExpress”.
O valor será o número da porta SSL configurado para a variável de ambiente ASPNETCORE_HTTPS_PORT.
Pronto , agora essas configurações serão lidas pelo middleware de redirecionamento HTTPS para garantir que as solicitações não HTTPS sejam redirecionadas para a porta correta.
Existem outras alterações como no código de autenticação que agora pode ser usado como uma biblioteca de classes Razor (RCL).
Até o próximo artigo.
"Porque o
coração deste povo está endurecido,E ouviram de mau
grado com seus ouvidos,E fecharam seus olhos;Para que
não vejam com os olhos,E ouçam com os ouvidos,e
compreendam com o coração,e se convertam,e eu os cure."
Mateus 13:15
Veja os
Destaques e novidades do SUPER DVD Visual Basic
(sempre atualizado) : clique e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
Quer aprender os conceitos da Programação Orientada a objetos ? Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ? |
Gostou ? Compartilhe no Facebook Compartilhe no Twitter
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
ASP .NET Core - Criando uma aplicação com Angular 2 - Macoratti.net
ASP .NET Core - Criando uma aplicação Web no ... - Macoratti.net
ASP .NET Core - Iniciando com ASP .NET Core MVC e ... - Macoratti
ASP .NET Core - Implementando a segurança com ... - Macoratti