Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Each new version of Visual Studio supports most projects, files, and other assets from prior versions. You can work with them as you always have, provided that you don't depend on newer features.
We try to preserve backwards compatibility with previous versions. However, support for some project types changes over time. A newer version of Visual Studio might not support certain projects at all, or it might require that you update a project so that it's no longer backwards-compatible.
Note
For current status on migration issues, refer to Visual Studio Developer Community. And to learn more about which features are specific to which Visual Studio version, see the Release Notes.
Important
Some project types require specific workloads. If you don't have the workload installed, Visual Studio reports an unknown or incompatible project type. In that case, check your installation options in the Visual Studio Installer and try again. For more information about platform support in Visual Studio, see Platform Targeting and Compatibility.
Project types
The following list describes support in Visual Studio for projects that were created in earlier versions. If you don't see a project or file type listed, consult the Visual Studio 2022 version of this article.
| Type of Project | Support |
|---|---|
| .NET Core projects (xproj) | Xproj projects were deprecated in Visual Studio 2017 and removed in Visual Studio 2019. For more information, see Migrating .NET Core projects to the csproj format. |
| ASP.NET Core Web App and ASP.NET Core Web App with Application Insights enabled | For each Visual Studio user, resource information is stored in the registry per user instance. This information is used when a user doesn't have a project opened and wants to search Azure Application Insights data. Visual Studio uses different registry location for different versions and doesn't conflict. Once a user creates an ASP.NET Web Application, ASP.NET Core Web App, or ASP.NET Core Web Application, the resource is stored in the .suo file. The user can open the project in Visual Studio 2015 or newer, and the resource information is used for each as long as Visual Studio supports projects and solutions being used across both versions. Users need to authenticate once on each product. For example, if a project is created with Visual Studio 2017 and opened in Visual Studio 2022, the user needs to authenticate on Visual Studio 2022. |
| Azure Cloud Services | Azure Cloud Services has been deprecated with support ending March 2027. Tooling for it has been removed in Visual Studio 2026. Migrate to Service Fabric managed cluster or use this decision matrix to determine the best migration path for your team. |
| Azure Resource Group | Azure Resource Group projects were deprecated in Visual Studio 2022, and removed in Visual Studio 2026. We recommend migrating to Bicep. |
| Coded UI Test | Coded UI test for automated UI-driven functional testing was deprecated in Visual Studio 2019 and removed in Visual Studio 2026. We recommend using Selenium for testing web apps and Appium with WinAppDriver for testing desktop and UWP apps. |
| Database Unit Test Projects (csproj, .vbproj) | Data Unit test projects from Visual Studio 2017 and earlier use the GAC'd version of dependencies. To upgrade the unit test project to use the latest dependencies, right-click on the project in Solution Explorer and select Convert to SQL Server Unit Testing Project.... |
| Embedded and IoT tools | The Embedded and IoT tools component, including RTOS View, Peripheral View, ST Project Importer, and Serial Monitor is no longer supported in Visual Studio 2026. |
| F# | Visual Studio 2026 can open projects created in earlier versions. |
| InstallShield MSI setup |
Installer projects created in Visual Studio 2010 can be opened in later versions with the help of the Microsoft Visual Studio Installer Projects. Also see the WiX v3 - Visual Studio Extension. InstallShield Limited Edition is no longer included with Visual Studio. Check with Revenera about availability. |
| LightSwitch | LightSwitch is no longer supported starting with Visual Studio 2017. |
| Load Test | Web performance and load test capabilities were deprecated in Visual Studio 2019 and removed in Visual Studio 2026. Use alternative load testing tools such as Apache JMeter, Akamai CloudTest, Blazemeter. |
| Microsoft Test Manager | Microsoft Test Manager and Feedback Client were removed in Visual Studio 2019. Leverage Azure Test Plans (part of Azure DevOps) for your manual and exploratory testing needs. |
| Model-View-Controller framework (ASP.NET MVC) | Visual Studio 2026 supports MVC 5 projects and opening but not creating MVC 4 projects. For information on upgrading older projects see |
| Mobile development with C++ | The MDD tools components "C++ Android development tools" and "C++ iOS development tools" are no longer supported in Visual Studio 2026. |
| Modeling | Visual Studio can open Modeling projects created in earlier versions with the following differences:
|
| MSI Setup (vdproj) | See the InstallShield section of this page. |
| Office 2007 VSTO | Requires a one-way upgrade for Visual Studio 2022. |
| Office 2010 VSTO | If the project targets the .NET Framework 4, you can open it in Visual Studio 2010 SP1 and later. All other projects require a one-way upgrade. |
| Portable Class Library (PCL) | Portable Class Libraries (PCL) are no longer supported. Visual Studio will still open and build them, but it isn't possible to create new PCL projects. We recommend migrating code in a PCL project to a .NET Standard project. PCL support can be installed using the optional ".NET Portable Targeting Pack" component. |
| Python Windows IoT Core apps | Support for Python Windows IoT Core apps was removed in Visual Studio 2019. You can continue using Visual Studio 2017. |
| R Tools for Visual Studio | R Tools for Visual Studio was removed from the Data Science Workload in Visual Studio 2019. You can continue using Visual Studio 2017 or alternatives like RStudio. |
| Service Fabric (sfproj) | The Service Fabric Application Projects have been removed in Visual Studio 2026, and will become a Visual Studio Extension. For status on availability, see this GitHub issue. |
| SharePoint 2010 | When a SharePoint 2010 solution project is opened with Visual Studio 2026, it's upgraded to SharePoint 2019. The ".NET Desktop Development" workload must be installed in Visual Studio for the upgrade. For more information about how to upgrade SharePoint projects, see Upgrade and Update SharePoint. |
| SharePoint 2016 | SharePoint Add-In projects created in Office Developer Tools Preview 2 can't be opened in Visual Studio 2022. To work around this limitation, update the MinimumVisualStudioVersion to 12.0 and MinimumOfficeToolsVersion to 12.2 in the csproj vbproj file. |
| Silverlight | Silverlight projects were removed in Visual Studio 2017. |
| SQL - Redgate | Redgate's SQL Change Automation Core, SQL Prompt Core, and SQL Search were removed in Visual Studio 2019. You can upgrade to the paid SQL Change Automation and SQL Prompt products that are available in Redgate's SQL Toolbelt. |
| SQL Server Reporting Services and SQL Server Analysis Services (SSRS, SSDT, SSAS, MSAS) | Support for these project types is provided through two extensions in the Visual Studio Marketplace: Microsoft Analysis Services Projects 2022+ and Microsoft Reporting Services Projects 2022+. SSDT support is also included with the Data Storage and Processing workload. For more information, see Download and install SQL Server Data Tools (SSDT) for Visual Studio. |
| SQL Server Integration Services (SSIS) | The SQL Server Integration Services Projects support is available through the SQL Server Integration Services Projects extension. |
| Test Window Extension | Some formerly public test window APIs were removed in Visual Studio 2019. |
| TypeScript | The TypeScript SDK was removed in Visual Studio 2022. Projects that compile TypeScript should install the Microsoft.TypeScript.MSBuild NuGet package. |
| Visual C++ | You can use Visual Studio 2026 to work with C++ projects created with Visual Studio 2010 or later. You can upgrade older projects (recommended) to build with the latest project system support (which will update your project file) and with the latest Microsoft C++ (MSVC) Build Tools. If you instead continue to use the original project as-is, leaving the project file unmodified, then you must have a corresponding version of the MSVC Build Tools installed. For projects from Visual Studio 2010 through 2012, side-by-side installation of Visual Studio is required. For projects from Visual Studio 2015 and later, a corresponding MSVC Build Tools version can be installed with Visual Studio 2026. For more information, see Use native multi-targeting in Visual Studio to build old projects. |
| Visual Studio Extensibility/VSIX | Most extensions developed for 17.0 (VS2022) as the minimum version will work unchanged in Visual Studio 2026. Extensions with the install target version range of 16.0 or less (that is, using MinimumVersion 16.0 or less) must be updated to declare MinimumVersion 17.0, which supports Visual Studio 2022 and higher. For a list of breaking changes that may impact upgrade to MinimumVersion 17.0, see Breaking API changes in Visual Studio. See also Modernizing Visual Studio Extension Compatibility. |
| Visual Studio Lab Management | You can use Microsoft Test Manager or Visual Studio 2010 SP1 and later to open environments created in any of these versions. However, for Visual Studio 2010 SP1 the version of Microsoft Test Manager must match the version of Team Foundation Server before you can create environments. (Important: Team Foundation Server, or TFS, is now known as Azure DevOps Server.) |
| Web Deployment (wdproj) | Support for Web Deployment projects was removed in Visual Studio 2012 with the addition of publish profile support. In Visual Studio 2026, open the wdproj file in a text editor and copy-paste any customizations into to the pubxml (publish profile) file, as described on StackOverflow. |
| Windows Store apps | JavaScript Universal Windows Projects were removed in Visual Studio 2019. To maintain these projects, use Visual Studio 2017. You can download the older Windows SDKs manually or retarget your projects to use the newer SDKs. Universal Windows Projects using project.json aren't supported. We recommend upgrading these projects to use package references. Alternately, add a reference to Microsoft.NET.Test.Sdk version 16.0.0.0 in the project.json file. Projects for Support for Windows Store 8.1 and 8.0 apps was removed in Visual Studio 2017. |
| Xamarin | Xamarin is no longer supported. Xamarin project support was removed in Visual Studio 2026. Despite Xamarin being out of support you may continue to use Visual Studio 2022 version 17.14 to upgrade your Xamarin projects to .NET MAUI. |
Pre-MSBuild projects
Warning
Pre-MSBuild .NET projects (that is, .NET projects created with versions of Visual Studio that predate MSBuild) are convertible at project load only when you upgrade them with a Visual Studio 2022 version 17.12. These project cannot be converted when using Visual Studio version 17.13 or later. Convert any such projects and save the converted project.
Migrate a project
We try to maintain compatibility with previous versions so that when you create and modify projects in one version of Visual Studio, it just works in prior versions. However, there can be changes that aren't compatible with previous versions. When this happens, a newer version of Visual Studio won't load the project or offer a migration path. You might have to maintain that project in a previous version of Visual Studio. For more information about the project types that are supported in Visual Studio 2026, see the Platform Targeting and Compatibility page.
Sometimes, a newer version of Visual Studio can open a project, but it must update or migrate the project in a way that might render it incompatible with previous versions. Visual Studio uses the following criteria to determine whether such migration is necessary:
Compatibility with the target versions of platforms, back to Visual Studio 2013 RTM.
Compatibility of design-time assets with previous versions of Visual Studio. Visual Studio aims to fail gracefully with deprecated design-time assets without corrupting them, such that previous versions can still open the project.
Whether new design time assets would break compatibility with previous versions.
Sometimes, compatibility isn't possible. Then, Visual Studio opens the upgrade wizard to make the necessary one-way changes. These one-way changes might involve changing the ToolsVersion property in the project file, which denotes exactly which version of MSBuild can turn the project's source code into the runnable and deployable artifacts that you want.
What renders a project incompatible with previous versions of Visual Studio isn't the Visual Studio version, but the MSBuild version, as determined by ToolsVersion. If your version of Visual Studio contains the MSBuild toolchain that matches the ToolsVersion in a project, then Visual Studio can invoke that toolchain to build the project.
To maintain compatibility with projects that you created in previous versions, Visual Studio includes the necessary MSBuild toolchains to support ToolsVersion 15, 14, 12, and 4. Projects that use any of these ToolsVersion values should result in a successful build. (Subject, again, to whether Visual Studio supports the project type, as described on Platform Targeting and Compatibility.)
It's not necessary to manually update or migrate a project to a newer ToolsVersion value. Doing so would likely generate many errors and warnings. If Visual Studio doesn't support a specific ToolsVersion in the future, then Visual Studio will help you migrate the project to a later ToolsVersion value.