Compartir a través de


Icono de Visual Studio Proyectos de puerto, migración y actualización de Visual Studio

Cada nueva versión de Visual Studio admite la mayoría de los proyectos, archivos y otros recursos de versiones anteriores. Puede trabajar con ellos como siempre ha hecho, siempre y cuando no dependa de las características más recientes.

Intentamos conservar la compatibilidad con versiones anteriores. Sin embargo, la compatibilidad con algunos tipos de proyecto cambia con el tiempo. Es posible que una versión más reciente de Visual Studio no admita ciertos proyectos o que requiera la actualización de un proyecto de forma que ya no sea compatible con versiones anteriores.

Nota:

Para ver el estado actual de los problemas de migración, consulte Visual Studio Developer Community. Para obtener más información sobre qué características son específicas de qué versiones de Visual Studio, consulte las Notas de lanzamiento.

Importante

Algunos tipos de proyecto requieren cargas de trabajo específicas. Si no tiene la carga de trabajo instalada, Visual Studio notifica que se trata de un tipo de proyecto incompatible o desconocido. En ese caso, compruebe las opciones de instalación en el Instalador de Visual Studio e inténtelo de nuevo. Para obtener más información sobre la compatibilidad con la plataforma en Visual Studio, vea Compatibilidad y destinatarios de la plataforma.

Tipos de proyecto

En la lista siguiente se describe la compatibilidad con Visual Studio para proyectos creados en versiones anteriores. Si no ve un proyecto o tipo de archivo en la lista, consulte la versión de Visual Studio 2022 de este artículo.

Tipo de proyecto Support
Proyectos de .NET Core (.xproj) Los proyectos de Xproj estaban en desuso en Visual Studio 2017 y se quitaron en Visual Studio 2019. Para más información, consulte Migración de proyectos de .NET Core al formato csproj.
Compatibilidad con contenedores de .NET Framework La compatibilidad con la creación y compilación de contenedores con .NET Framework está en desuso y se quita en Visual Studio 2026. Considere la posibilidad de migrar a .NET Core o seguir usando Visual Studio 2022 para contenedores de .NET Framework.
Aplicación web ASP.NET Core y aplicaicón web ASP.NET Core con Application Insights habilitado Para cada usuario de Visual Studio, la información de los recursos se almacena en el Registro por instancia de usuario. Esta información se usa cuando un usuario no tiene abierto un proyecto y quiere buscar datos de Azure Application Insights. Visual Studio usa una ubicación diferente del Registro para distintas versiones y no entra en conflicto.

Una vez que un usuario crea una aplicación web ASP.NET, una aplicación web ASP.NET Core o una aplicación web ASP.NET Core, el recurso se almacena en el archivo .suo. El usuario puede abrir el proyecto en Visual Studio 2015 o versiones posteriores, y la información de recursos se usa para cada uno siempre que Visual Studio admita proyectos y soluciones que se usen en ambas versiones. Los usuarios deben autenticarse una vez en cada producto. Por ejemplo, si un proyecto se ha creado con Visual Studio 2017 y se ha abierto en Visual Studio 2022, el usuario se debe autenticar en Visual Studio 2022.
Azure Cloud Services Azure Cloud Services dejó de estar disponible con soporte finalizando en marzo de 2027. Las herramientas para ello se han eliminado en Visual Studio 2026. Migre al clúster administrado de Service Fabric o use esta matriz de decisión para determinar la mejor ruta de migración para el equipo.
Grupo de recursos de Azure Los proyectos de Grupo de recursos de Azure estaban en desuso en Visual Studio 2022 y se quitaron en Visual Studio 2026. Se recomienda migrar a Bicep.
Prueba automatizada de IU Las pruebas de IU codificadas para las pruebas funcionales automatizadas de IU se dejaron de usar en Visual Studio 2019 y se eliminaron en Visual Studio 2026. Se recomienda usar Selenium para probar aplicaciones web y Appium con WinAppDriver para probar aplicaciones de escritorio y UWP.
Proyectos de prueba unitaria de base de datos (csproj, vbproj) Los proyectos de prueba unitaria de datos de Visual Studio 2017 y versiones anteriores usan la versión de GAC de las dependencias. Para actualizar el proyecto de prueba unitaria de modo que use las dependencias más recientes, haga clic con el botón derecho en el proyecto en el Explorador de soluciones y seleccione Convertir en proyecto de prueba unitaria de SQL Server… .
Herramientas de IoT y embebidas El componente de herramientas integradas e IoT, incluida la Vista RTOS, la Vista de periféricos, el ST Project Importer y el Monitor serie ya no se admiten en Visual Studio 2026.
F# Visual Studio 2026 puede abrir proyectos creados en versiones anteriores.
InstallShield
Programa de instalación de MSI
Los proyectos de instalador creados en Visual Studio 2010 se pueden abrir en versiones posteriores con la ayuda de los proyectos del instalador de Microsoft Visual Studio. Consulte también la extensión WiX v3 - Visual Studio. InstallShield Limited Edition ya no se incluye con Visual Studio. Consulte con Revenera acerca de la disponibilidad.
LightSwitch LightSwitch ya no se admite a partir de Visual Studio 2017.
Prueba de carga Las funcionalidades de pruebas de carga y rendimiento web han quedado en desuso en Visual Studio 2019 y se han quitado en Visual Studio 2026. Se recomienda Azure Load Testing o herramientas alternativas de pruebas de carga, como Apache JMeter, Akamai CloudTest, Blazemeter.
Microsoft Test Manager Microsoft Test Manager y Feedback Client se quitaron en Visual Studio 2019. Aproveche Azure Test Plans (parte de Azure DevOps) para sus necesidades de pruebas manuales y exploratorias.
Marco de trabajo Model-View-Controller (ASP.NET MVC) Visual Studio 2026 admite proyectos de MVC 5 y abre pero no crea proyectos de MVC 4. Para obtener información sobre cómo actualizar proyectos más antiguos, consulte
Desarrollo móvil con C++ Los componentes de herramientas mdD "Herramientas de desarrollo de Android de C++" y "Herramientas de desarrollo de IOS de C++" ya no se admiten en Visual Studio 2026.
Modeling Visual Studio puede abrir proyectos de modelado creados en versiones anteriores con las siguientes diferencias:
  • Los proyectos de modelado ahora se denominan proyectos de "Validación de dependencias" en los menús y las plantillas.
  • Los diagramas UML se quitaron en Visual Studio 2017. Los archivos UML se muestran en el Explorador de soluciones igual que antes, pero se abrirán como archivos XML. Use Visual Studio 2015 para ver, crear o editar los diagramas UML.
  • A partir de Visual Studio 2019, la validación de dependencias arquitectónicas ya no se realiza cuando se compila el proyecto de modelado. En su lugar, la validación se lleva a cabo a medida que se compila cada proyecto de código y Visual Studio actualiza los proyectos de código para admitir este cambio.
Programa de instalación de MSI (vdproj) Consulte la sección InstallShield de esta página.
Office 2007 VSTO Se necesita una actualización unidireccional para Visual Studio 2022.
Office 2010 VSTO Si el proyecto tiene como destino .NET Framework 4, puede abrirlo en Visual Studio 2010 SP1 y posterior. Todos los demás proyectos requieren una actualización unidireccional.
Biblioteca de clases portable (PCL) Ya no se admiten bibliotecas de clases portables (PCL). Visual Studio seguirá abierto y los compilará, pero no es posible crear nuevos proyectos de PCL. Se recomienda migrar el código de un proyecto PCL a un proyecto de .NET Standard. La compatibilidad con PCL se puede instalar mediante el componente opcional ".NET Portable Targeting Pack".
Aplicaciones de Python para Windows IoT Core En Visual Studio 2019 se ha quitado la compatibilidad con aplicaciones Python de Windows IoT Core. Puede seguir usando Visual Studio 2017.
R Tools para Visual Studio En Visual Studio 2019 se ha quitado Herramientas de R para Visual Studio de la carga de trabajo de ciencia de datos. Puede seguir usando Visual Studio 2017 o alternativas como RStudio.
Service Fabric (sfproj) Los proyectos de aplicación de Service Fabric se han quitado en Visual Studio 2026 y se convertirán en una extensión de Visual Studio. Para obtener el estado de disponibilidad, consulte este problema de GitHub.
SharePoint 2010 Cuando se abre un proyecto de solución de SharePoint 2010 con Visual Studio 2026, se actualiza a SharePoint 2019. La carga de trabajo "Desarrollo de escritorio de .NET" se debe instalar en Visual Studio para la actualización. Para obtener más información sobre cómo actualizar proyectos de SharePoint, vea Actualización de SharePoint.
SharePoint 2016 Los proyectos de complemento de SharePoint creados en Office Developer Tools Preview 2 no se pueden abrir en Visual Studio 2022. Como solución alternativa a esta limitación, actualice MinimumVisualStudioVersion a 12.0 y MinimumOfficeToolsVersion a 12.2 en el archivo csproj o vbproj.
Silverlight Los proyectos de Silverlight se quitaron en Visual Studio 2017.
SQL: Redgate Sql Change Automation Core de Redgate, SQL Prompt Core y SQL Search se quitaron en Visual Studio 2019. Puede actualizar a los productos de SQL Change Automation y SQL Prompt de pago que están disponibles en la herramienta SQL toolbelt de Redgate.
SQL Server Reporting Services y SQL Server Analysis Services (SSRS, SSDT, SSAS, MSAS) La compatibilidad con estos tipos de proyecto se proporciona a través de dos extensiones en Visual Studio Marketplace: Microsoft Analysis Services Projects 2022+ y Microsoft Reporting Services Projects 2022+. La compatibilidad SSDT también se incluye con la carga de trabajo de almacenamiento y procesamiento de datos. Para obtener más información, vea Descargar e instalar SQL Server Data Tools (SSDT) para Visual Studio.
SQL Server Integration Services (SSIS) La compatibilidad con proyectos de SQL Server Integration Services está disponible a través de la extensión Proyectos de SQL Server Integration Services .
Extensión de ventana de prueba Algunas API de ventana de prueba anteriormente públicas se quitaron en Visual Studio 2019.
TypeScript El SDK de TypeScript se quitó en Visual Studio 2022. Los proyectos que compilan código de TypeScript deben instalar el paquete NuGet Microsoft.TypeScript.MSBuild.
Visual C++ Puede usar Visual Studio 2026 para trabajar con proyectos de C++ creados con Visual Studio 2010 o posterior.

Puede actualizar proyectos más antiguos (recomendados) para compilar con la compatibilidad con el sistema de proyectos más reciente (que actualizará el archivo del proyecto) y con las herramientas de compilación de Microsoft C++ (MSVC) más recientes.

Si en su lugar sigue usando el proyecto original as-is, dejando sin modificar el archivo del proyecto, debe tener instalada una versión correspondiente de las herramientas de compilación de MSVC. Para los proyectos de Visual Studio 2010 a 2012, se requiere la instalación en paralelo de Visual Studio. Para los proyectos de Visual Studio 2015 y versiones posteriores, se puede instalar una versión correspondiente de MSVC Build Tools con Visual Studio 2026. Para obtener más información, vea Use native multi-targeting in Visual Studio to build old projects (Usar compatibilidad nativa con múltiples versiones en Visual Studio para compilar proyectos antiguos).
Extensibilidad de Visual Studio/VSIX La mayoría de las extensiones desarrolladas para la versión 17.0 (VS2022) como la versión mínima funcionará sin cambios en Visual Studio 2026. Las extensiones con el intervalo de versiones de destino de instalación de 16.0 o menos (es decir, con MinimumVersion 16.0 o menos) deben actualizarse para declarar MinimumVersion 17.0, que admite Visual Studio 2022 y versiones posteriores. Para obtener una lista de los cambios importantes que pueden afectar a la actualización a MinimumVersion 17.0, consulte Cambios importantes en la API en Visual Studio. Consulte también Modernización de la compatibilidad de extensiones de Visual Studio.
Administración de laboratorio de Visual Studio Lab Management fue eliminado en VS 2026. Los planes de prueba de Azure se pueden usar para las pruebas manuales o exploratorias y la administración del entorno.
Implementación web (wdproj) La compatibilidad de los proyectos de implementación web se ha retirado de los proyectos de Visual Studio 2012 con la adición de la compatibilidad del perfil de publicación. En Visual Studio 2026, abra el archivo wdproj en un editor de texto y copie las personalizaciones en el archivo pubxml (perfil de publicación), como se describe en StackOverflow.
Aplicaciones de la Tienda Windows Los proyectos universales de Windows de JavaScript se quitaron en Visual Studio 2019. Para mantener estos proyectos, use Visual Studio 2017. Puede descargar manualmente versiones anteriores de los SDK de Windows o redireccionar sus proyectos para usar los SDK más recientes.

No se admiten los proyectos Windows universal con project.json. Se recomienda actualizar estos proyectos para que usen referencias de paquete. Como alternativa, puede agregar una referencia a la versión 16.0.0.0 de Microsoft.NET.Test.Sdk en el archivo project.json.

Los proyectos para soporte de aplicaciones de la Tienda Windows 8.1 y 8.0 fueron eliminados en Visual Studio 2017.
Xamarin Ya no se admite Xamarin. La compatibilidad con proyectos de Xamarin se quitó en Visual Studio 2026. A pesar de que Xamarin no es compatible, puede seguir usando Visual Studio 2022 versión 17.14 para actualizar los proyectos de Xamarin a .NET MAUI.

Proyectos anteriores a MSBuild

Advertencia

Los proyectos de .NET anteriores a MSBuild (es decir, los proyectos de .NET creados con versiones de Visual Studio que predescriben MSBuild) solo se pueden convertir en carga del proyecto cuando se actualizan con una versión 17.12 de Visual Studio 2022. No se puede convertir este proyecto al usar visual Studio versión 17.13 o posterior. Convierta estos proyectos y guarde el proyecto convertido.

Migración de un proyecto

Intentamos mantener la compatibilidad con versiones anteriores para que, al crear y modificar proyectos en una versión de Visual Studio, solo funciona en versiones anteriores. Sin embargo, puede haber cambios que no sean compatibles con versiones anteriores. Cuando esto sucede, la versión más reciente de Visual Studio no cargará el proyecto ni ofrecerá una ruta de migración. Es posible que tenga que conservar ese proyecto en una versión anterior de Visual Studio. Para obtener más información sobre los tipos de proyecto que se admiten en Visual Studio 2026, consulte la página Compatibilidad y destinatarios de la plataforma.

A veces, una versión más reciente de Visual Studio puede abrir un proyecto, pero con el inconveniente de que debe actualizarlo o migrarlo de forma que deja de ser compatible con versiones anteriores. Visual Studio usa los siguientes criterios para determinar si es necesaria dicha migración:

  • Compatibilidad con las versiones de las plataformas de destino, hasta Visual Studio 2013 RTM.

  • Compatibilidad de los recursos de tiempo de diseño con versiones anteriores de Visual Studio. Visual Studio busca gestionar con elegancia los fallos relacionados con los elementos de tiempo de diseño obsoletos sin corromperlos, de manera que las versiones anteriores aún puedan abrir el proyecto.

  • Si los nuevos recursos en tiempo de diseño interrumpirían la compatibilidad con versiones anteriores.

A veces, no es posible la compatibilidad. Después, Visual Studio abre el asistente para actualización para realizar los cambios unidireccionales necesarios. Estos cambios unidireccionales pueden implicar el cambio de la propiedad ToolsVersion en el archivo de proyecto. Esta propiedad indica exactamente qué versión de MSBuild puede convertir el código fuente del proyecto en los artefactos ejecutables e implementables deseados.

Lo que hace que un proyecto no sea compatible con versiones anteriores de Visual Studio no es la versión de Visual Studio, sino la versión de MSBuild, tal como determina ToolsVersion. Si la versión de Visual Studio contiene la cadena de herramientas de MSBuild que coincide con la propiedad ToolsVersion de un proyecto, Visual Studio puede invocar esa cadena de herramientas para compilar el proyecto.

Para mantener la compatibilidad con los proyectos creados en versiones anteriores, Visual Studio incluye las cadenas de herramientas de MSBuild necesarias para admitir ToolsVersion 15, 14, 12 y 4. Los proyectos que usan cualquiera de estos valores de ToolsVersion deberían dar como resultado una compilación correcta. (Sujeto, de nuevo, a si Visual Studio admite el tipo de proyecto, como se describe en Compatibilidad y destinatarios de la plataforma).

No es necesario actualizar o migrar manualmente un proyecto a un valor más reciente ToolsVersion . Si lo hace, probablemente generaría muchos errores y advertencias. Si Visual Studio no admite un elemento específico ToolsVersion en el futuro, Visual Studio le ayudará a migrar el proyecto a un valor posterior ToolsVersion .