Partilhar via


Ícone do Visual Studio Visual Studio 2019 Portar, migrar e atualizar projetos

Importante

Esta não é a versão mais recente do Visual Studio. Para baixar a versão mais recente, visite https://visualstudio.microsoft.com/downloads/ e consulte as notas de versão do Visual Studio 2022.

Cada nova versão do Visual Studio oferece suporte à maioria dos tipos de projetos, arquivos e outros ativos. Você pode trabalhar com eles como sempre fez, desde que não dependa de recursos mais recentes.

Sugestão

Se você estiver procurando informações específicas para nossa próxima versão, consulte a versão do Visual Studio 2022 desta página.

Tentamos preservar a compatibilidade com versões anteriores, como Visual Studio 2017, Visual Studio 2015, Visual Studio 2013 e Visual Studio 2012. No entanto, o suporte para alguns tipos de projeto muda ao longo do tempo. Uma versão mais recente do Visual Studio pode não oferecer suporte a determinados projetos ou pode exigir que você atualize um projeto para que ele não seja mais compatível com versões anteriores.

Observação

Para obter o status atual sobre problemas de migração, consulte a Comunidade de desenvolvedores do Visual Studio. E para saber mais sobre quais recursos são específicos para qual versão do Visual Studio, consulte as Notas de versão.

Importante

Alguns tipos de projeto exigem cargas de trabalho específicas. Se você não tiver a carga de trabalho instalada, o Visual Studio relatará um tipo de projeto desconhecido ou incompatível. Nesse caso, verifique as opções de instalação no instalador do Visual Studio e tente novamente. Para obter mais informações sobre o suporte a projetos no Visual Studio 2019, consulte a página Platform Targeting and Compatibility (Segmentação e compatibilidade de plataforma ).

Tipos de projeto

A lista a seguir descreve o suporte no Visual Studio 2019 para projetos que foram criados em versões anteriores.

Se você não vir um projeto ou tipo de arquivo listado aqui que deveria ser, consulte a versão Visual Studio 2017 deste artigo. Você também pode usar o botão Enviar e exibir comentários para>Esta página na parte inferior desta página para fornecer detalhes do seu projeto. (Se você usar o controle anônimo "Esta página foi útil?", não poderemos responder aos seus comentários.)

Tipo de Projeto Support
Projetos .NET Core (xproj) Os projetos criados com o Visual Studio 2015 usavam ferramentas de visualização que incluíam um arquivo de projeto xproj.

Visual Studio 2017: O formato xproj não é suportado a não ser para a migração para o formato csproj. Ao abrir um arquivo xproj, você será solicitado a migrar o arquivo para o formato csproj no estilo SDK. (Um backup do arquivo xproj é feito.) Projetos csproj no estilo SDK não são suportados no Visual Studio 2015 e anteriores.

Visual Studio 2019: Na versão 16.3 e posterior, não é possível carregar ou migrar projetos xproj. Para obter mais informações, consulte Migrando projetos .NET Core para o formato csproj.
ASP.NET Core Web App e ASP.NET Core Web App com o Application Insights ativado Para cada usuário do Visual Studio, as informações de recurso são armazenadas no registro por instância de usuário. Essas informações são usadas quando um usuário não tem um projeto aberto e deseja pesquisar dados do Azure Application Insights. O Visual Studio 2015 usa um local do Registro diferente do Visual Studio 2017 e do Visual Studio 2019 e não entra em conflito.

Depois que um usuário cria um Aplicativo Web ASP.NET, ASP.NET Aplicativo Web Principal ou ASP.NET Aplicativo Web Principal, o recurso é armazenado no arquivo .suo. O usuário pode abrir o projeto no Visual Studio 2015, Visual Studio 2017 ou Visual Studio 2019, e as informações do recurso são usadas para cada um, desde que o Visual Studio ofereça suporte a projetos e soluções que estão sendo usados em ambas as versões. Os usuários precisam se autenticar uma vez em cada produto. Por exemplo, se um projeto for criado com o Visual Studio 2017 e aberto no Visual Studio 2019, o usuário precisará se autenticar no Visual Studio 2019.
Webform C#/Visual Basic ou Windows Form Você pode abrir o projeto no Visual Studio 2019, Visual Studio 2017 e Visual Studio 2015.
Teste de interface do usuário codificado O teste codificado da interface do usuário para testes funcionais automatizados orientados pela interface do usuário foi preterido no Visual Studio 2019.

O Visual Studio 2019 será a última versão para o teste de interface do usuário codificada. Recomendamos usar o Selenium para testar aplicativos Web e o Appium com WinAppDriver para testar aplicativos de área de trabalho e UWP.
Projetos de teste de unidade de banco de dados (csproj, .vbproj) Projetos de teste de unidade de dados mais antigos são carregados no Visual Studio 2019, mas usam a versão GAC das dependências. Para atualizar o projeto de teste de unidade para usar as dependências mais recentes, clique com o botão direito do mouse no projeto no Gerenciador de Soluções e selecione Converter em Projeto de Teste de Unidade do SQL Server....
F# O Visual Studio 2019 pode abrir projetos criados no Visual Studio 2013, Visual Studio 2015 e Visual Studio 2017. Uma diferença importante dos modelos mais antigos do Visual Studio para novos projetos é que a versão FSharp.Core agora é sempre um pacote NuGet. F# é instalado por padrão com qualquer carga de trabalho .NET.
InstallShield
Configuração MSI
Projetos de instalador criados no Visual Studio 2010 podem ser abertos em versões posteriores com a ajuda da extensão Visual Studio Installer Projects. Consulte também a extensão WiX Toolset Visual Studio 2017. O InstallShield Limited Edition não está mais incluído no Visual Studio. Verifique com Revenera sobre a disponibilidade para Visual Studio 2019.
Interruptor de luz O LightSwitch não é mais suportado no Visual Studio 2022, Visual Studio 2019 ou Visual Studio 2017. Projetos criados com o Visual Studio 2012 e anteriormente abertos no Visual Studio 2013 ou Visual Studio 2015 são atualizados e podem ser abertos somente no Visual Studio 2013 ou Visual Studio 2015 posteriormente.
Teste de carga O desempenho da Web e os recursos de teste de carga foram preteridos no Visual Studio 2019 e posterior.

O Visual Studio 2019 será a última versão para teste de carga. Use ferramentas alternativas de teste de carga, como Apache JMeter, Akamai CloudTest, Blazemeter.
Ferramentas do Microsoft Azure para Visual Studio Para abrir esses tipos de projetos, primeiro instale o SDK do Azure para .NET e, em seguida, abra o projeto. Se necessário, o seu projeto é atualizado.
Gestor de Testes Microsoft O Microsoft Test Manager e o Feedback Client não são mais enviados no Visual Studio, começando com o Visual Studio 2019.

Aproveite os Planos de Teste do Azure (parte do Azure DevOps) para suas necessidades de testes manuais e exploratórios.
Model-View-Controller framework (ASP.NET MVC) Suporte para versões MVC e Visual Studio:
  • Visual Studio 2010 SP1 suporta MVC 2 e MVC 3; O suporte ao MVC 4 é adicionado por meio do download do ASP.NET 4 MVC 4 para Visual Studio 2010 SP1
  • Visual Studio 2012 suporta apenas MVC 3 e MVC 4
  • Visual Studio 2013 suporta apenas MVC 4 e MVC 5
  • O Visual Studio 2019, o Visual Studio 2017 e o Visual Studio 2015 oferecem suporte ao MVC 4 (você pode abrir projetos existentes, mas não criar novos) e ao MVC 5

Atualizando versões do MVC:
Modeling Se você permitir que o Visual Studio atualize o projeto automaticamente, poderá abri-lo no Visual Studio 2015, Visual Studio 2013 ou Visual Studio 2012.

O formato do projeto de modelagem não mudou desde o Visual Studio 2015 e o projeto pode ser aberto e modificado nessas versões. No entanto, há diferenças no comportamento no Visual Studio 2017 e no Visual Studio 2019:
  • Os projetos de modelagem agora são chamados de projetos de "Validação de Dependência" nos menus e modelos.
  • Os diagramas UML não são mais suportados no Visual Studio 2017 e no Visual Studio 2019. Os arquivos UML são listados no Gerenciador de Soluções como antes, mas são abertos como arquivos XML. Use o Visual Studio 2015 para exibir, criar ou editar diagramas UML.
  • No Visual Studio 2019, a validação de dependências arquitetônicas não é mais executada quando o projeto de modelagem é criado. Em vez disso, a validação é realizada à medida que cada projeto de código é construído. Essa alteração não afeta o projeto de modelagem, mas requer alterações nos projetos de código que estão sendo validados. O Visual Studio 2019 pode fazer automaticamente as alterações necessárias nos projetos de código.
Configuração MSI (vdproj) Consulte a seção InstallShield desta página.
Office 2007 VSTO Requer uma atualização unidirecional para o Visual Studio 2019.
Office 2010 VSTO Se o projeto tem como alvo o .NET Framework 4, você pode abri-lo no Visual Studio 2010 SP1 e posterior. Todos os outros projetos requerem uma atualização unidirecional.
Biblioteca de Classes Portátil (PCL) As bibliotecas de classes portáteis (ou PCLs) agora não são suportadas. O Visual Studio 2019 ainda irá abri-los e criá-los, mas não é possível criar novos projetos PCL. Recomendamos migrar o código em um projeto PCL para um projeto .NET Standard.

O suporte a PCL não será mais incluído por padrão, mas estará disponível na guia "Componentes individuais" do Visual Studio.
Carga de trabalho Python O suporte para aplicativos Python Windows IoT Core foi removido no Visual Studio 2019. Como não há equivalente no Visual Studio 2019, não há caminho de migração automática para esses projetos.

Você pode continuar usando o Visual Studio 2017.
Ferramentas R para Visual Studio O R Tools for Visual Studio foi removido da carga de trabalho de ciência de dados no Visual Studio 2019.

Você pode continuar usando o Visual Studio 2017 ou alternativas como RStudio.
Service Fabric (sfproj) Os projetos do Aplicativo Service Fabric podem ser abertos no Visual Studio 2015, Visual Studio 2017 e Visual Studio 2019, a menos que o projeto Aplicativo do Service Fabric faça referência a um projeto de serviço ASP.NET Core. Os projetos do Service Fabric do Visual Studio 2015 que são abertos no Visual Studio 2017 ou no Visual Studio 2019 são migrados de forma unidirecional do formato xproj para csproj. Consulte ".NET Core projects (xproj)" anteriormente nesta tabela.
SharePoint 2010 Quando um projeto de solução do SharePoint é aberto com o Visual Studio 2019, ele é atualizado para o SharePoint 2013 ou SharePoint 2016. A carga de trabalho ".NET Desktop Development" deve ser instalada no Visual Studio 2019 para a atualização.

Para obter mais informações sobre como atualizar projetos do SharePoint, consulte Atualizar e atualizar o SharePoint.
SharePoint 2016 Os projetos do SharePoint Add-In criados no Office Developer Tools Preview 2 não podem ser abertos no Visual Studio 2019. Para contornar essa limitação, atualize o MinimumVisualStudioVersion para 12.0 e MinimumOfficeToolsVersion para 12.2 no arquivo csproj vbproj.
Silverlight Projetos do Silverlight sem suporte no Visual Studio 2019. Para manter os aplicativos do Silverlight, continue a usar o Visual Studio 2015.
SQL - Redgate O SQL Change Automation Core da Redgate (anteriormente chamado de ReadyRoll Core), o SQL Prompt Core e o SQL Search não são mais enviados no instalador do Visual Studio.

Você pode continuar usando o Visual Studio 2017 para esses recursos. No Visual Studio 2019, você pode atualizar para os produtos pagos SQL Change Automation e SQL Prompt que estão disponíveis no SQL Toolbelt da Redgate.
SQL Server Reporting Services e SQL Server Analysis Services (SSRS, SSDT, SSAS, MSAS) O suporte para esses tipos de projeto é fornecido por meio de duas extensões na Galeria do Visual Studio: Projetos do Microsoft Analysis Services e Projetos do Microsoft Reporting Services. O suporte a SSDT também está incluído na carga de trabalho de Armazenamento e Processamento de Dados no Visual Studio 2019. Para obter mais informações, consulte a página Baixar e instalar o SSDT (SQL Server Data Tools) para Visual Studio .
SQL Server Integration Services (SSIS) O suporte para o Visual Studio 2019 está disponível. Para obter mais informações, consulte a página Baixar e instalar o SSDT (SQL Server Data Tools) para Visual Studio , o blog da equipe do SQL Server Integration Services (SSIS) e a página Projetos do SQL Server Integration Services no Marketplace.
Extensão da janela de teste No Visual Studio 2019, algumas APIs de janela de teste que foram anteriormente marcadas como públicas, mas nunca foram oficialmente documentadas, foram removidas. APIs amplamente visíveis foram marcadas como preteridas no Visual Studio 2017 para dar aos mantenedores de extensão um aviso antecipado. Até onde sabemos, poucas extensões dependeram dessas APIs. Para obter mais informações e atualizações, consulte a lista completa de APIs relacionadas a testes preteridas. Se isso afetar seu cenário, informe-nos por meio da Comunidade de desenvolvedores do Visual Studio.
Visual C++ Você pode usar o Visual Studio 2019 para trabalhar em projetos que foram criados em versões anteriores do Visual Studio de volta para o Visual Studio 2010. Quando você abre o projeto pela primeira vez, você tem a opção de atualizar para o compilador e conjunto de ferramentas mais recentes ou continuar usando os originais. Se você optar por continuar usando os originais, o Visual Studio 2019 não modificará o arquivo de projeto e usará o conjunto de ferramentas da instalação anterior do Visual Studio para criar seu projeto. Manter as opções originais significa que você ainda pode abrir o projeto na versão original do Visual Studio, se necessário. Para obter mais informações, consulte Usar a funcionalidade de multi-targeting nativa no Visual Studio para compilar projetos antigos.
Extensibilidade do Visual Studio/VSIX Projetos com MinimumVersion 14.0 ou menos são atualizados para declarar MinimumVersion 15.0, o que impede que o projeto seja aberto em versões anteriores do Visual Studio. Para permitir que um projeto seja aberto em versões anteriores, defina MinimumVersion como $(VisualStudioVersion). Consulte também Como migrar projetos de extensibilidade para o Visual Studio 2017.
Gerenciamento de laboratório do Visual Studio Você pode usar o Microsoft Test Manager ou Visual Studio 2010 SP1 e posterior para abrir ambientes criados em qualquer uma dessas versões. No entanto, para Visual Studio 2010 SP1 a versão do Microsoft Test Manager deve corresponder à versão do Team Foundation Server antes de você pode criar ambientes. (Importante: Team Foundation Server, ou TFS, agora é conhecido como Azure DevOps Server.)
Ferramentas do Visual Studio para Apache Cordova O suporte para Apache Cordova foi removido no Visual Studio 2019. Como não há equivalente no Visual Studio 2019, não há caminho de migração automática para esses projetos.

Você pode usar a extensão Cordova Tools for Visual Studio Code (que fornece suporte para a versão mais recente do Cordova) ou continuar usando o Visual Studio 2017.
Implantação da Web (wdproj) O suporte para projetos de implantação da Web foi removido no Visual Studio 2012 com a adição do suporte ao perfil de publicação. Como não há equivalente no Visual Studio 2019, não há caminho de migração automática para esses projetos. Em vez disso, abra o arquivo wdproj em um editor de texto e copie e cole todas as personalizações no arquivo pubxml (perfil de publicação), conforme descrito em StackOverflow.
Windows Communication Foundation, Fundação de Fluxo de Trabalho do Windows Você pode abrir este projeto no Visual Studio 2019, Visual Studio 2017, Visual Studio 2015, Visual Studio 2013 e Visual Studio 2012.
Arquitectura de Apresentação do Windows Você pode abrir este projeto no Visual Studio 2019, Visual Studio 2017, Visual Studio 2013, Visual Studio 2012 e Visual Studio 2010 SP1.
Aplicativos do Windows Phone Projetos para Windows Phone não são suportados no Visual Studio 2019.

Para manter aplicativos do Windows Phone 8.x, use o Visual Studio 2015. Para manter projetos do Windows Phone 7.x, use o Visual Studio 2012.
Aplicações da Loja Windows Projetos universais do Windows JavaScript não são suportados no Visual Studio 2019. Para manter esses projetos, use o Visual Studio 2017.

Os SDKs do Windows 10 anteriores à Atualização de Criadores de outono do Windows 10 (compilação 16299) foram removidos do instalador do Visual Studio 2019. Você pode baixar os SDKs mais antigos manualmente ou redirecionar seus projetos para usar os SDKs mais recentes.

Projetos universais do Windows usando project.json não são suportados. Recomendamos atualizar esses projetos para usar referências de pacote. Como alternativa, adicione uma referência a Microsoft.NET.Test.Sdk versão 16.0.0.0 no arquivo project.json.

Projetos para Windows Store 8.1 e 8.0 não são suportados no Visual Studio 2019. Para manter esses aplicativos, continue a usar o Visual Studio 2015.
Xamarin A extensão Xamarin Live Player para Visual Studio e Visual Studio para Mac foi removida. Isso remove a tela de emparelhamento e qualquer integração. Em vez disso, use o Xamarin.Forms Previewer interno.

O emulador do Visual Studio para Android foi removido do instalador do Visual Studio. Em vez disso, use o novo suporte de Hyper-V no emulador do Google Android.

Migrar um projeto

Embora tentemos manter a compatibilidade com versões anteriores, pode haver alterações que não são compatíveis com versões anteriores. (Consulte Segmentação e compatibilidade de plataforma para quais tipos de projeto são suportados no Visual Studio 2019.) Quando isso acontece, uma versão mais recente do Visual Studio não carrega o projeto ou oferece um caminho de migração. Talvez seja necessário manter esse projeto em uma versão anterior do Visual Studio.

Às vezes, a versão mais recente do Visual Studio pode abrir um projeto, mas ele deve atualizar ou migrar o projeto de uma forma que pode torná-lo incompatível com versões anteriores. O Visual Studio usa os seguintes critérios para determinar se essa migração é necessária:

  • Compatibilidade com as versões de destino das plataformas, de volta ao Visual Studio 2013 RTM.

  • Compatibilidade de ativos de tempo de design com versões anteriores do Visual Studio. (Ou seja, diferentes canais do Visual Studio 2019, Visual Studio 2017; Visual Studio 2015 RTM & Atualização 3; Visual Studio 2013 RTM & Atualização 5; Visual Studio 2012 Atualização 4; Visual Studio 2010 SP 1.) O Visual Studio 2019 visa falhar graciosamente com ativos de tempo de design preteridos sem corrompê-los, de modo que as versões anteriores ainda possam abrir o projeto.

  • Se os novos ativos de tempo de design quebrariam a compatibilidade com versões anteriores até o Visual Studio 2013 RTM & Atualização 5.

A equipe de engenharia proprietária do tipo de projeto examina esses critérios e faz a chamada no que diz respeito ao suporte, compatibilidade e migração. Novamente, tentamos manter a compatibilidade entre as versões do Visual Studio para que, quando você cria e modifica projetos em uma versão do Visual Studio, ele funciona apenas em outras versões.

Às vezes, a compatibilidade não é possível. Em seguida, o Visual Studio abre o assistente de atualização para fazer as alterações unidirecionais necessárias. Essas alterações unidirecionais podem envolver a alteração da ToolsVersion propriedade no arquivo de projeto, que indica exatamente qual versão do MSBuild pode transformar o código-fonte do projeto nos artefatos executáveis e implantáveis que você deseja.

O que torna um projeto incompatível com versões anteriores do Visual Studio não é a versão do Visual Studio , mas a versão do MSBuild , conforme determinado pelo ToolsVersion. Se sua versão do Visual Studio contém a cadeia de ferramentas MSBuild que corresponde ao em um projeto, então Visual ToolsVersion Studio pode invocar essa cadeia de ferramentas para criar o projeto.

Para manter a compatibilidade com projetos criados em versões anteriores, o Visual Studio 2019 inclui as cadeias de ferramentas MSBuild necessárias para oferecer suporte ToolsVersion a 15, 14, 12 e 4. Projetos que usam qualquer um desses ToolsVersion valores devem resultar em uma compilação bem-sucedida. (Assunto, novamente, se o Visual Studio 2019 oferece suporte ao tipo de projeto, conforme descrito em Segmentação e compatibilidade de plataforma.)

Você pode ficar tentado a atualizar manualmente ou migrar um projeto para um valor mais recente ToolsVersion . É desnecessário fazer essa alteração, e provavelmente geraria muitos erros e avisos que você deve corrigir para que o projeto seja construído novamente. Além disso, se o Visual Studio não oferecer suporte a um específico ToolsVersion no futuro, o projeto acionará o processo de migração do projeto quando você abri-lo porque seu ToolsVersion valor deve ser alterado.

Próximos passos

Consulte os seguintes artigos para mais discussão:

Consulte também