Ссылка на сведения о миграции и обновлении проекта для Visual Studio

Как правило, каждая версия Visual Studio поддерживает большую часть типов проектов, файлов и других ресурсов предыдущих выпусков. С ними можно работать, как обычно, при условии, что вы не зависите от новых функций. В Visual Studio по возможности сохраняется обратная совместимость с предыдущими версиями, такими как Visual Studio 2015, Visual Studio 2013 и Visual Studio 2012. (См. заметки о выпуске, чтобы узнать, какие функции к какой версии относятся.)

Поддержка некоторых типов проектов также со временем меняется. Новейшая версия Visual Studio может больше не поддерживать некоторые проекты или же потребовать обновить проект так, что он больше не будет обратно совместимым. Текущее состояние проблем с миграцией см. на сайте сообщества разработчиков Visual Studio.

В этой статье содержатся только сведения о типах проектов, которые Visual Studio 2017 может переносить. В статье не указаны типы проектов, которые больше не поддерживаются в Visual Studio 2017 и поэтому не могут быть перенесены. Кроме того, в ней не указаны поддерживаемые типы проектов, не имеющие проблем с миграцией. Этот список находится на странице целевой платформы и совместимости.

Dica

Если вы ищете сведения о последнем выпуске, см. версию этой страницы для Visual Studio 2022.

Importante

Для определенных типов проектов требуется установить соответствующие рабочие нагрузки с помощью установщика Visual Studio. При отсутствии установленной рабочей нагрузки Visual Studio сообщает о неизвестном или несовместимом типе проекта. В этом случае проверьте параметры установки и повторите попытку. Просмотрите статью о целевой платформе и совместимости для получения сведений о поддержке проектов в Visual Studio 2017.

Типы проектов

В следующем списке описывается поддержка проектов Visual Studio 2017, созданных в более ранних версиях.

Если тип проекта или файла отсутствует, просмотрите статью о версии Visual Studio 2015 и воспользуйтесь параметром Отправить отзыв > Об этой странице в нижней части этой страницы для предоставления сведений о проекте. (При использовании анонимного элемента "Была ли эта страница полезной?" мы не можем отвечать на ваши отзывы.)

Тип проекта Поддержка
Проекты .NET Core (XPROJ) В проектах, созданных в Visual Studio 2015, использовались предварительные версии средств, включающие XPROJ-файл проекта. В Visual Studio 2017 формат XPROJ поддерживается исключительно для переноса в формат CSPROJ. При открытии XPROJ-файла вам будет предложено перенести файл в формат CSPROJ в стиле SDK. (Будет создана резервная копия XPROJ-файла.) Проекты формата CSPROJ в стиле SDK не поддерживаются в Visual Studio 2015 и более ранних версиях. Дополнительные сведения см. в статье Перенос проектов .NET Core в формат .csproj.
Веб-приложение ASP.NET и веб-приложения ASP.NET Core с включенной службой Application Insights В Visual Studio сведения о ресурсах хранятся в реестре для каждого экземпляра пользователя. Эти сведения используются, если пользователь хочет найти данные Azure Application Insights, не открывая проект. Расположение реестра в Visual Studio 2015 отличается от расположения реестра в Visual Studio 2017, поэтому конфликты отсутствуют.

Когда пользователь создает веб-приложение ASP.NET или веб-приложение ASP.NET Core, ресурс сохраняется в SUO-файл. Пользователь может открыть проект в Visual Studio 2015 или 2017, и сведения о ресурсе используются в обеих версиях до тех пор, пока Visual Studio поддерживает проекты и решения, используемые в обеих версиях. Пользователям требуется пройти проверку подлинности один раз в каждой версии продукта. Например, если проект создается в Visual Studio 2015 и открывается в Visual Studio 2017, пользователю требуется пройти проверку подлинности в Visual Studio 2017 г.
Веб-форма или форма Windows C#/Visual Basic Проект можно открыть в Visual Studio 2017 и Visual Studio 2015.
Проекты модульных тестов базы данных (CSPROJ, VBPROJ) Старые проекты модульных тестов данных загружаются в Visual Studio 2017, но используют GAC-версию зависимостей. Чтобы обновить проект модульного теста для использования последних зависимостей, щелкните проект правой кнопкой мыши в обозревателе решений и выберите Преобразовать в проект модульного тестирования SQL Server.
F# В Visual Studio 2017 можно открывать проекты, созданные в Visual Studio 2013 и 2015. Чтобы включить функции Visual Studio 2017 в этих проектах, откройте окно свойств проекта, и измените целевой объект fsharp.core на F# 4.1. Обратите внимание, что вариант Поддержка языка F# в установщике Visual Studio не выбран по умолчанию с рабочими нагрузками .NET; необходимо включить его, выбрав соответствующий параметр для рабочей нагрузки или выбрав его на вкладке Отдельные компоненты в разделе Действия разработки.
InstallShield
Установка MSI
Проекты установщика, созданные в Visual Studio 2010, можно открыть в более поздних версиях с помощью расширения проектов установщика Visual Studio. Также см. сведения о расширении набора инструментов WiX для Visual Studio 2017. InstallShield Limited Edition больше не входит в состав Visual Studio. Уточните доступность этого решения для Visual Studio 2017 у компании Flexera Software.
LightSwitch LightSwitch больше не поддерживается в Visual Studio 2017. Проекты, созданные в Visual Studio 2012 и более ранних версиях и открытые в Visual Studio 2013 или Visual Studio 2015, обновляются и могут быть открыты только в Visual Studio 2013 или Visual Studio 2015.
Инструменты Microsoft Azure для Visual Studio Для открытия этих типов проектов сначала установите пакет Azure SDK для .NET, а затем откройте соответствующий проект. При необходимости проект будет обновлен.
Платформа MVC ("модель-представление-контроллер") (ASP.NET MVC) Поддержка версий MVC и Visual Studio:
  • Visual Studio 2010 с пакетом обновления 1 (SP1) поддерживает MVC 2 и MVC 3. Поддержка MVC 4 добавляется с помощью скачивания ASP.NET 4 MVC 4 для Visual Studio 2010 с пакетом обновления 1 (SP1).
  • Visual Studio 2012 поддерживает только MVC 3 и MVC 4.
  • Visual Studio 2013 поддерживает только MVC 4 и MVC 5
  • Visual Studio 2017 и Visual Studio 2015 поддерживают MVC 4 (можно открывать существующие проекты, но не создавать новые) и MVC 5

Обновление версий MVC:
Моделирование Если разрешить автоматическое обновление проекта в Visual Studio, его можно открыть в Visual Studio 2015, Visual Studio 2013 или Visual Studio 2012.

Формат проекта моделирования не изменился в версиях с Visual Studio 2015 по Visual Studio 2017, и проект можно открыть и изменить в любой версии. Но в Visual Studio 2017 существуют различия в поведении.
  • Теперь проекты моделирования называются в меню и шаблонах проектами проверки зависимостей.
  • UML-схемы больше не поддерживаются в Visual Studio 2017. UML-файлы указываются в обозревателе решений, как и ранее, но открываются как XML-файлы. Для просмотра, создания или изменения UML-схем следует использовать Visual Studio 2015.
  • В Visual Studio 2017 проверка архитектурных зависимостей больше не выполняется при сборке проекта моделирования. Вместо этого проверка осуществляется при сборке каждого проекта кода. Это изменение не влияет на проект моделирования, но необходимо внести изменения в проверяемые проекты кода. Visual Studio 2017 автоматически вносит необходимые изменения в проекты кода (дополнительные сведения).
Установка MSI (VDPROJ) См. раздел "Проекты InstallShield".
Office 2007 VSTO Требует одностороннего обновления до Visual Studio 2017.
Office 2010 VSTO Если проект предназначен для платформы .NET Framework 4, его можно открыть в Visual Studio 2010 с пакетом обновления 1 (SP1). Все остальные проекты требуют одностороннего обновления.
Service Fabric (SFPROJ) Проекты приложения Service Fabric можно открывать как в Visual Studio 2015, так и в Visual Studio 2017, но проект приложения Service Fabric не должен ссылаться на проект службы ASP.NET Core. При открытии в Visual Studio 2017 проектов Service Fabric, созданных в Visual Studio 2015, выполняется односторонний перенос из формата XPROJ в CSPROJ. См. сведения о проектах .NET Core (XPROJ) выше в этой таблице.
SharePoint 2010 Когда вы откроете проект SharePoint в Visual Studio 2017, он обновляется до SharePoint 2013 или SharePoint 2016. Для этого обновления в Visual Studio 2017 должна быть установлена рабочая нагрузка "Разработка классических приложений .NET".

Дополнительные сведения об обновлении проектов SharePoint см. в Обновление SharePoint.
SharePoint 2016 Проекты надстройки SharePoint, созданные в предварительной версии Office Developer Tools 2, невозможно открыть в Visual Studio 2017. Чтобы обойти это ограничение, в файле CSPROJ VBPROJ для MinimumVisualStudioVersion укажите 12.0, а для MinimumOfficeToolsVersion — значение 12.2.
Silverlight Проекты Silverlight не поддерживаются в Visual Studio 2017. Для поддержки приложений Silverlight продолжайте использовать Visual Studio 2015.
Службы SQL Server Reporting Services и службы SQL Server Analysis Services (SSRS, SSDT, SSAS, MSAS) Поддержка этих типов проектов обеспечивается двумя расширениями из коллекции Visual Studio: Проекты моделирования Microsoft Analysis Services и проекты служб Microsoft Reporting Services. Поддержка SSDT также включена в рабочую нагрузку хранения и обработки данных в Visual Studio 2017. Дополнительную информацию см. на странице Скачивание и установка SQL Server Data Tools (SSDT) для Visual Studio.
Службы интеграции SQL Server (SSIS) Поддержка Visual Studio 2017 доступна в рамках SQL Server Data Tools (SSDT). Подробнее см. в руководстве по скачиванию и установке SQL Server Data Tools (SSDT) для Visual Studio и записи блога команды разработчиков SQL Server Integration Services (SSIS).
Visual C++ Visual Studio 2017 можно использовать для работы в проектах, которые созданы в более ранних версиях Visual Studio (до Visual Studio 2010). При первом открытии проекта вы можете выполнить обновление до последней версии компилятора и набора инструментов или продолжить использование исходную версию. В этом случае Visual Studio 2017 не будет вносить изменения в файл проекта, используя набор инструментов из более ранней установки Visual Studio для сборки проекта. Сохранение исходных параметров означает, что при необходимости вы по-прежнему можете открывать проект в исходной версии Visual Studio. Дополнительные сведения см. в разделе Использование собственного многоплатформенного нацеливания в Visual Studio для сборки старых проектов.
Расширяемость Visual Studio/VSIX Проекты с минимальной версией 14.0 или меньше обновляются до минимальной версии 15.0, что не позволяет открывать проекты в более ранних версиях Visual Studio. Чтобы открыть проект в более ранних версиях, задайте $(VisualStudioVersion) в качестве значения минимальной версии. См. также Практическое руководство. Перенос проектов расширяемости в Visual Studio 2017.
Visual Studio Lab Management Microsoft Test Manager или Visual Studio 2010 с пакетом обновления 1 (SP1) можно использовать для открытия сред, которые были созданы в какой-либо из этих версий. Но версия Microsoft Test Manager должна соответствовать версии Visual Studio 2010 с пакетом обновления 1 (SP1), чтобы можно было создавать среды.
Средства Visual Studio для Apache Cordova Проекты можно открывать в Visual Studio 2017, но они не являются обратно совместимыми. После открытия проекта в Visual Studio 2015 предлагается разрешить внесение изменений в проект. Это позволит обновить проект, чтобы вместо файла taco.json использовать набор инструментов для управления версиями библиотеки Cordova, платформами и подключаемыми модулями, а также зависимостями узлов или npm. Дополнительные сведения см. в руководстве по миграции.
Веб-развертывание (WDPROJ) Поддержка проектов веб-развертывания прекращена, начиная с Visual Studio 2012, а вместо нее добавлена поддержка профиля публикации. Так как в Visual Studio 2017 нет эквивалентной функции, для таких проектов отсутствует путь автоматического переноса. Вместо этого откройте в текстовом редакторе файл WDPROJ, скопируйте любые настройки и вставьте их в файл PUBXML (профиль публикации), как описано на сайте StackOverflow.
Windows Communication Foundation, Windows Workflow Foundation Этот проект можно открыть в Visual Studio 2017, Visual Studio 2015, Visual Studio 2013 и Visual Studio 2012.
Windows Presentation Foundation Этот проект можно открыть в Visual Studio 2017, Visual Studio 2013, Visual Studio 2012 и Visual Studio 2010 с пакетом обновления 1.
Приложения для Магазина Windows и Windows Phone В Visual Studio 2017 не поддерживаются проекты для Магазина Windows 8.1 и Магазина Windows 8.0 и для Windows Phone 8.1 и Windows Phone 8.0. Для поддержки этих приложений продолжайте использовать Visual Studio 2015. Для поддержки проектов Windows Phone 7.x используйте Visual Studio 2012.

Как Visual Studio определяет необходимость переноса проекта

В каждой новой версии Visual Studio по возможности сохраняется совместимость с предыдущими версиями, чтобы проект можно было открывать, изменять и выполнять его сборку в разных версиях. Однако со временем неизбежны изменения, из-за которых некоторые типы проектов могут больше не поддерживаться. (Список типов проектов, поддерживаемых в Visual Studio 2017, см. в статье Целевые платформы и совместимость.) В таких случаях проект не будет загружаться в более новой версии Visual Studio и путь миграции предлагаться не будет. С проектом следует работать в предыдущей версии Visual Studio, которая поддерживает его.

В других случаях проект может открываться в более новой версии Visual Studio, но он должен быть обновлен или перенесен, из-за чего он может стать несовместимым с предыдущими версиями. Необходимость в миграции определяется в Visual Studio на основе ряда критериев:

  • совместимость с целевыми версиями платформ вплоть до Visual Studio 2013 RTM;

  • совместимость ресурсов времени разработки с предыдущими версиями Visual Studio (в частности, с различными каналами Visual Studio 2017, Visual Studio 2015 RTM и с обновлением 3, Visual Studio 2013 RTM и с обновлением 5, Visual Studio 2012 с обновлением 4, Visual Studio 2010 с пакетом обновления 1 (SP1)); в случае использования нерекомендуемых ресурсов времени разработки в Visual Studio 2017 предпринимается попытка обработать их корректно, не повреждая их, чтобы проект по-прежнему мог открываться в предыдущих версиях;

  • нарушение совместимости с предыдущими версиями вплоть до Visual Studio 2013 RTM и с обновлением 5 из-за новых ресурсов времени разработки.

Технический владелец проекта оценивает эти критерии и создает запрос, если имеется необходимость в поддержке, обеспечении совместимости и миграции. Между версиями Visual Studio по возможности обеспечивается прозрачная совместимость. Это означает, что проекты, создаваемые и изменяемые в одной версии Visual Studio, будут работать в других версиях.

Однако если такая совместимость невозможна, как в случае с некоторыми типами проектов, описанными в этой статье, в Visual Studio открывается мастер обновления для внесения необходимых односторонних изменений.

Одним из этих односторонних изменений может быть изменение свойства ToolsVersion в файле проекта. Оно указывает, какая именно версия MSBuild может преобразовывать исходный код проекта в выполняемые и развертываемые артефакты. То есть несовместимость проекта с предыдущими версиями Visual Studio зависит не от версии Visual Studio, а от версии MSBuild, определяемой свойством ToolsVersion. Если ваша версия Visual Studio включает в себя цепочку инструментов MSBuild, соответствующую значению свойства ToolsVersion в проекте, то она может вызывать эту цепочку инструментов для сборки проекта.

С целью обеспечения максимальной совместимости с проектами, созданными в более ранних версиях, Visual Studio 2017 включает в себя необходимые цепочки инструментов MSBuild для поддержки значений ToolsVersion 15, 14, 12 и 4. Сборка проектов, в которых используется любое из этих значений ToolsVersion, должна выполняться успешно. (При этом необходимо учитывать, поддерживает ли вообще Visual Studio 2017 данный тип проекта, как описано в статье Целевые платформы и совместимость.)

В этом контексте, естественно, возникает вопрос, следует ли попытаться обновить проект вручную или перенести его на более новую версию ToolsVersion. Такое изменение не является обязательным и, скорее всего, приведет ко множеству ошибок и предупреждений, которые потребуется исправить, чтобы сборка проекта снова стала возможной. Кроме того, если в Visual Studio в будущем перестанет поддерживаться определенная версия ToolsVersion, при открытии проекта будет запущен процесс его миграции, так как значение ToolsVersion должно быть изменено. В такой ситуации подсистеме, связанной с этим типом проектов, точно известно, что именно нужно изменить, и она может произвести эти изменения автоматически, как было описано ранее в этой статье.

Следующие шаги

Дополнительные сведения см. в следующих статьях:

См. также

Каждая новая версия Visual Studio поддерживает большую часть типов проектов, файлов и других ресурсов. С ними можно работать как обычно, при условии, что вы не зависите от новых функций.

Dica

Если вы ищете сведения о следующем выпуске, см. версию этой страницы для Visual Studio 2022.

Мы стараемся сохранить обратную совместимость с предыдущими версиями, такими как Visual Studio 2017, Visual Studio 2015, Visual Studio 2013 и Visual Studio 2012. Однако поддержка некоторых типов проектов также со временем меняется. Новейшая версия Visual Studio может не поддерживать некоторые проекты или же потребовать обновить проект так, что он больше не будет обратно совместимым.

Observação

Текущее состояние проблем с миграцией см. в сообществе разработчиков Visual Studio. Просмотрите заметки о выпуске, чтобы узнать, какие функции к какой версии Visual Studio относятся.

Importante

Некоторые типы проектов требуют конкретных рабочих нагрузок. При отсутствии установленной рабочей нагрузки Visual Studio сообщает о неизвестном или несовместимом типе проекта. В этом случае проверьте параметры установки в Visual Studio Installer и повторите попытку. Дополнительные сведения о поддержке проектов в Visual Studio 2019 см. в статье Целевая платформа и совместимость для Visual Studio 2019.

Типы проектов

В следующем списке описывается поддержка проектов Visual Studio 2019, созданных в более ранних версиях.

Если здесь отсутствует проект или тип файла, который должен быть, проверьте версию Visual Studio 2017 в этом разделе. Чтобы привести детали проекта воспользуйтесь кнопкой Отправить отзыв о > эта страница в нижней части страницы. (При использовании анонимного элемента "Была ли эта страница полезной?" мы не можем отвечать на ваши отзывы.)

Тип проекта Поддержка
Проекты .NET Core (XPROJ) В проектах, созданных в Visual Studio 2015, использовались предварительные версии средств, включающие XPROJ-файл проекта.

Visual Studio 2017: Формат XPROJ поддерживается исключительно для переноса в формат CSPROJ. При открытии XPROJ-файла вам будет предложено перенести файл в формат CSPROJ в стиле SDK. (Будет создана резервная копия XPROJ-файла.) Проекты формата CSPROJ в стиле SDK не поддерживаются в Visual Studio 2015 и более ранних версиях.

Visual Studio 2019: В версии 16.3 и более поздних не удается загрузить или перенести проекты формата XPROJ. Дополнительные сведения см. в статье Перенос проектов .NET Core в формат .csproj.
Веб-приложение ASP.NET Core и веб-приложение ASP.NET Core с включенной службой Application Insights В Visual Studio сведения о ресурсах хранятся в реестре для каждого экземпляра пользователя. Эти сведения используются, если пользователь хочет найти данные Azure Application Insights, не открывая проект. Расположение реестра в Visual Studio 2015 отличается от расположения реестра в Visual Studio 2017 и Visual Studio 2019, поэтому конфликты отсутствуют.

Когда пользователь создает веб-приложение ASP.NET или веб-приложение ASP.NET Core, ресурс сохраняется в SUO-файл. Пользователь может открыть проект в Visual Studio 2015, Visual Studio 2017 или Visual Studio 2019, и сведения о ресурсе используются в каждой версии до тех пор, пока Visual Studio поддерживает проекты и решения, используемые в обеих версиях. Пользователям требуется пройти проверку подлинности один раз в каждой версии продукта. Например, если проект создается в Visual Studio 2017 и открывается в Visual Studio 2019, пользователю требуется пройти проверку подлинности в Visual Studio 2019.
Веб-форма или форма Windows C#/Visual Basic Проект можно открыть в Visual Studio 2019, Visual Studio 2017 и Visual Studio 2015.
Закодированный тест ИП Закодированный тест пользовательского интерфейса для автоматизированного функционального тестирования на основе интерфейса пользователя признан нерекомендуемым в Visual Studio 2019.

Visual Studio 2019 станет последней версией решения, в которой поддерживается закодированный тест пользовательского интерфейса. Мы рекомендуем использовать Selenium для тестирования веб-приложений и Appium с WinAppDriver для тестирования классических приложений и приложений универсальной платформы Windows.
Проекты модульных тестов базы данных (CSPROJ, VBPROJ) Старые проекты модульных тестов данных загружаются в Visual Studio 2019, но используют GAC-версию зависимостей. Чтобы обновить проект модульного теста для использования последних зависимостей, щелкните проект правой кнопкой мыши в обозревателе решений и выберите Преобразовать в проект модульного тестирования SQL Server.
F# Visual Studio 2019 поддерживает открытие проектов, созданных в Visual Studio 2013, Visual Studio 2015 и Visual Studio 2017. Ключевое отличие старых шаблонов Visual Studio для новых проектов заключается в том, что версия FSharp.Core сейчас всегда представляет собой пакет NuGet. F# устанавливается по умолчанию с любой рабочей нагрузкой .NET.
InstallShield
Установка MSI
Проекты установщика, созданные в Visual Studio 2010, можно открыть в более поздних версиях с помощью расширения проектов установщика Visual Studio. Также см. сведения о расширении набора инструментов WiX для Visual Studio 2017. InstallShield Limited Edition больше не входит в состав Visual Studio. Уточните доступность этого решения для Visual Studio 2019 у компании Flexera Software.
LightSwitch LightSwitch больше не поддерживается в Visual Studio 2019 или Visual Studio 2017. Проекты, созданные в Visual Studio 2012 и более ранних версиях и открытые в Visual Studio 2013 или Visual Studio 2015, обновляются и могут быть открыты только в Visual Studio 2013 или Visual Studio 2015.
Загрузить тест В Visual Studio 2019 возможности веб-тестов производительности и нагрузочных тестов являются нерекомендуемыми.

Visual Studio 2019 станет последней версией решения, в которой поддерживается нагрузочное тестирование. В связи с этим следует использовать альтернативные средства нагрузочного тестирования, такие как Apache JMeter, Akamai CloudTest, Blazemeter.
Инструменты Microsoft Azure для Visual Studio Для открытия этих типов проектов сначала установите пакет Azure SDK для .NET, а затем откройте соответствующий проект. При необходимости проект будет обновлен.
Microsoft Test Manager Начиная с Visual Studio 2019, Microsoft Test Manager и Feedback Client не поставляются в составе Visual Studio.

Для нужд ручного и произвольного тестирования используйте Azure Test Plans (в составе Azure DevOps). Подробнее см. в руководстве по использованию Microsoft Test Manager в документации по Azure DevOps.
Платформа MVC ("модель-представление-контроллер") (ASP.NET MVC) Поддержка версий MVC и Visual Studio:
  • Visual Studio 2010 с пакетом обновления 1 (SP1) поддерживает MVC 2 и MVC 3. Поддержка MVC 4 добавляется с помощью скачивания ASP.NET 4 MVC 4 для Visual Studio 2010 с пакетом обновления 1 (SP1).
  • Visual Studio 2012 поддерживает только MVC 3 и MVC 4.
  • Visual Studio 2013 поддерживает только MVC 4 и MVC 5
  • Visual Studio 2019, Visual Studio 2017 и Visual Studio 2015 поддерживают MVC 4 (можно открывать существующие проекты, но не создавать новые) и MVC 5

Обновление версий MVC:
Моделирование Если разрешить автоматическое обновление проекта в Visual Studio, его можно открыть в Visual Studio 2015, Visual Studio 2013 или Visual Studio 2012.

Формат проекта моделирования не изменился по сравнению с версией Visual Studio 2015, и проект можно открывать и изменять в этих версиях. Но в Visual Studio 2017 и Visual Studio 2019 существуют различия в поведении:
  • Теперь проекты моделирования называются в меню и шаблонах проектами проверки зависимостей.
  • UML-схемы больше не поддерживаются в Visual Studio 2017 и Visual Studio 2019. UML-файлы указываются в обозревателе решений, как и ранее, но открываются как XML-файлы. Для просмотра, создания или изменения UML-схем следует использовать Visual Studio 2015.
  • В Visual Studio 2019 проверка архитектурных зависимостей больше не выполняется при сборке проекта моделирования. Вместо этого проверка осуществляется при сборке каждого проекта кода. Это изменение не влияет на проект моделирования, но необходимо внести изменения в проверяемые проекты кода. Visual Studio 2019 автоматически вносит необходимые изменения в проекты кода.
Установка MSI (VDPROJ) См. раздел "Проекты InstallShield".
Office 2007 VSTO Требует одностороннего обновления до Visual Studio 2019.
Office 2010 VSTO Если проект предназначен для платформы .NET Framework 4, его можно открыть в Visual Studio 2010 с пакетом обновления 1 (SP1). Все остальные проекты требуют одностороннего обновления.
Переносимая библиотека классов (PCL) Переносимые библиотеки классов (или PCL) теперь не поддерживаются. Visual Studio 2019 по-прежнему будет поддерживать их открытие и сборку, однако создание проектов PCL будет невозможно. Рекомендуется выполнить перенос кода в проекте PCL в проект .NET Standard.

Поддержка PCL более не будет включена по умолчанию, однако будет доступна на вкладке "Отдельные компоненты" в Visual Studio.
Рабочая нагрузка Python В Visual Studio 2019 прекращена поддержка приложений Python Windows IoT Core. Так как в Visual Studio 2019 нет эквивалентной функции, для таких проектов отсутствует путь автоматического переноса.

Вы можете по-прежнему использовать Visual Studio 2017.
Средства R для Visual Studio В Visual Studio 2019 Инструменты R для Visual Studio были исключены из рабочей нагрузки обработки и анализа данных.

Вы можете по-прежнему использовать Visual Studio 2017 или такие альтернативные решения, как RStudio.
Service Fabric (SFPROJ) Проекты приложения Service Fabric можно открывать как в Visual Studio 2015, так и в Visual Studio 2017 или Visual Studio 2019, но проект приложения Service Fabric не должен ссылаться на проект службы ASP.NET Core. При открытии в Visual Studio 2017 или Visual Studio 2019 проектов Service Fabric, созданных в Visual Studio 2015, выполняется односторонний перенос из формата XPROJ в CSPROJ. См. сведения о проектах .NET Core (XPROJ) выше в этой таблице.
SharePoint 2010 Когда вы открываете проект SharePoint в Visual Studio 2019, он обновляется до SharePoint 2013 или SharePoint 2016. Для этого обновления в Visual Studio 2019 должна быть установлена рабочая нагрузка "Разработка классических приложений .NET".

Дополнительные сведения об обновлении проектов SharePoint см. в Обновление SharePoint.
SharePoint 2016 Проекты надстройки SharePoint, созданные в предварительной версии Office Developer Tools 2, невозможно открыть в Visual Studio 2019. Чтобы обойти это ограничение, в файле CSPROJ VBPROJ для MinimumVisualStudioVersion укажите 12.0, а для MinimumOfficeToolsVersion — значение 12.2.
Silverlight Проекты Silverlight не поддерживаются в Visual Studio 2019. Для поддержки приложений Silverlight продолжайте использовать Visual Studio 2015.
SQL — Redgate Компоненты Redgate SQL Change Automation Core (прежнее название ReadyRoll Core), SQL Prompt Core и SQL Search более не поставляются вместе с установщиком Visual Studio.

Вы можете по-прежнему использовать Visual Studio 2017, где эти возможности доступны. В Visual Studio 2019 вы можете выполнить обновление до платных продуктов SQL Change Automation и SQL Prompt, которые доступны в составе решения Redgate SQL Toolbelt.
Службы SQL Server Reporting Services и службы SQL Server Analysis Services (SSRS, SSDT, SSAS, MSAS) Поддержка этих типов проектов обеспечивается двумя расширениями из коллекции Visual Studio: Проекты моделирования Microsoft Analysis Services и проекты служб Microsoft Reporting Services. Поддержка SSDT также включена в рабочую нагрузку хранения и обработки данных в Visual Studio 2019. Дополнительную информацию см. на странице Скачивание и установка SQL Server Data Tools (SSDT) для Visual Studio.
Службы интеграции SQL Server (SSIS) Добавлена поддержка Visual Studio 2019. Подробнее см. в руководстве по скачиванию и установке SQL Server Data Tools (SSDT) для Visual Studio, записи блога команды разработчиков SQL Server Integration Services (SSIS), а также на странице проектов SQL Server Integration Services в Marketplace.
Расширение окна теста В Visual Studio 2019 были удалены некоторые API окон тестирования, которые были ранее помечены как общедоступные, но не были задокументированы официально. Эти API были помечены как "нерекомендуемые" в Visual Studio 2017, чтобы заранее предупредить группы обслуживания расширений. Насколько нам известно, с этими API была связана лишь незначительная часть расширений. Дополнительные сведения и обновления см. в полном списке устаревших API для тестирования. Если это затрагивает вас, сообщите нам об этом в сообществе разработчиков.
Visual C++ Visual Studio 2019 можно использовать для работы в проектах, которые созданы в более ранних версиях Visual Studio (до Visual Studio 2010). При первом открытии проекта вы можете выполнить обновление до последней версии компилятора и набора инструментов или продолжить использование исходную версию. В этом случае Visual Studio 2019 не будет вносить изменения в файл проекта, используя набор инструментов из более ранней установки Visual Studio для сборки проекта. Сохранение исходных параметров означает, что при необходимости вы по-прежнему можете открывать проект в исходной версии Visual Studio. Дополнительные сведения см. в разделе Использование собственного многоплатформенного нацеливания в Visual Studio для сборки старых проектов.
Расширяемость Visual Studio/VSIX Проекты с минимальной версией 14.0 или меньше обновляются до минимальной версии 15.0, что не позволяет открывать проекты в более ранних версиях Visual Studio. Чтобы открыть проект в более ранних версиях, задайте $(VisualStudioVersion) в качестве значения минимальной версии. См. также Практическое руководство. Перенос проектов расширяемости в Visual Studio 2017.
Visual Studio Lab Management Microsoft Test Manager или Visual Studio 2010 с пакетом обновления 1 (SP1) можно использовать для открытия сред, которые были созданы в какой-либо из этих версий. Но версия Microsoft Test Manager должна соответствовать версии Visual Studio 2010 с пакетом обновления 1 (SP1), чтобы можно было создавать среды.
Средства Visual Studio для Apache Cordova В Visual Studio 2019 была прекращена поддержка Apache Cordova. Так как в Visual Studio 2019 нет эквивалентной функции, для таких проектов отсутствует путь автоматического переноса.

Вы можете использовать расширение средств Cordova для Visual Studio Code, которое обеспечивает поддержку последней версии Cordova, либо продолжить использовать Visual Studio 2017.
Веб-развертывание (WDPROJ) Поддержка проектов веб-развертывания прекращена, начиная с Visual Studio 2012, а вместо нее добавлена поддержка профиля публикации. Так как в Visual Studio 2019 нет эквивалентной функции, для таких проектов отсутствует путь автоматического переноса. Вместо этого откройте в текстовом редакторе файл WDPROJ, скопируйте любые настройки и вставьте их в файл PUBXML (профиль публикации), как описано на сайте StackOverflow.
Windows Communication Foundation, Windows Workflow Foundation Этот проект можно открыть в Visual Studio 2019, Visual Studio 2017, Visual Studio 2015, Visual Studio 2013 и Visual Studio 2012.
Windows Presentation Foundation Этот проект можно открыть в Visual Studio 2019, Visual Studio 2017, Visual Studio 2013, Visual Studio 2012 и Visual Studio 2010 с пакетом обновления 1.
Приложения Windows Phone Visual Studio 2019 не поддерживает проекты для Windows Phone.

Для поддержки приложений Windows Phone 8.x используйте Visual Studio 2015. Для поддержки проектов Windows Phone 7.x используйте Visual Studio 2012.
Приложения для Магазина Windows Visual Studio 2019 не поддерживает проекты для универсальной платформы Windows на JavaScript. Для поддержки этих проектов используйте Visual Studio 2017.

Из установщика Visual Studio 2019 были исключены версии пакетов SDK Windows 10, предшествующие обновлению Windows 10 Fall Creators Update (сборка 16299). Вы можете вручную скачать старые версии таких пакетов SDK или использовать их более новые версии.

Проекты для универсальной платформы Windows, в которых используется project.json, более не поддерживаются. Рекомендуется обновить эти проекты так, чтобы в них использовались ссылки на пакеты. Кроме того, вы можете добавить ссылку на файл Microsoft.NET.Test.Sdk версии 16.0.0.0 в файл project.json.

Visual Studio 2019 не поддерживает проекты для Microsoft Store 8.1 и 8.0. Для поддержки этих приложений продолжайте использовать Visual Studio 2015.
Xamarin Было исключено расширение Xamarin Live Player для Visual Studio и Visual Studio для Mac. В результате этого были удалены экран связывания и возможности интеграции. Вместо них следует использовать встроенное средство предварительного просмотра Xamarin.Forms.

Из Visual Studio Installer был удален эмулятор Visual Studio для Android. Вместо него следует использовать новые возможности поддержки Hyper-V в Google Android Emulator.

Миграция проекта

Хотя мы пытаемся сохранить совместимость с предыдущими версиями, существуют изменения, из-за которых некоторые типы проектов могут больше не поддерживаться. (Список типов проектов, поддерживаемых в Visual Studio 2019, см. в статье Целевые платформы и совместимость.) В таких случаях в более новой версии Visual Studio не будет загружаться проект или предлагаться путь миграции. С этим проектом необходимо будет работать в предыдущей версии Visual Studio.

Иногда проект может открываться в более новой версии Visual Studio, но он должен быть обновлен или перенесен, из-за чего может стать несовместимым с предыдущими версиями. Необходимость в миграции определяется в Visual Studio на основе ряда критериев:

  • совместимость с целевыми версиями платформ вплоть до Visual Studio 2013 RTM;

  • совместимость ресурсов времени разработки с предыдущими версиями Visual Studio (в частности, с различными каналами Visual Studio 2019, Visual Studio 2017; Visual Studio 2015 RTM и с обновлением 3, Visual Studio 2013 RTM и с обновлением 5, Visual Studio 2012 с обновлением 4, Visual Studio 2010 с пакетом обновления 1 (SP1)); в случае использования нерекомендуемых ресурсов времени разработки в Visual Studio 2019 предпринимается попытка обработать их корректно, не повреждая их, чтобы проект по-прежнему мог открываться в предыдущих версиях;

  • нарушение совместимости с предыдущими версиями вплоть до Visual Studio 2013 RTM и с обновлением 5 из-за новых ресурсов времени разработки.

Группа разработчиков проекта оценивает эти критерии и создает запрос, если есть необходимость в поддержке, обеспечении совместимости и миграции. Мы пытаемся обеспечивать совместимость между версиями Visual Studio, чтобы проекты, создаваемые в одной версии Visual Studio, могли работать и в других версиях.

Иногда такая совместимость невозможна. Тогда в Visual Studio открывается мастер обновления для внесения необходимых односторонних изменений. Одним из этих односторонних изменений может быть изменение свойства ToolsVersion в файле проекта. Оно указывает, какая именно версия MSBuild может преобразовывать исходный код проекта в требуемые выполняемые и развертываемые артефакты.

Несовместимость проекта с предыдущими версиями Visual Studio зависит не от версии Visual Studio, а от версии MSBuild, определяемой свойством ToolsVersion. Если ваша версия Visual Studio включает в себя цепочку инструментов MSBuild, соответствующую значению свойства ToolsVersion в проекте, то она может вызывать эту цепочку инструментов для сборки проекта.

С целью обеспечения совместимости с проектами, созданными в предыдущих версиях, Visual Studio 2019 включает в себя необходимые цепочки инструментов MSBuild для поддержки значений ToolsVersion 15, 14, 12 и 4. Сборка проектов, в которых используется любое из этих значений ToolsVersion, должна выполняться успешно. (При этом необходимо учитывать, поддерживает ли Visual Studio 2019 данный тип проекта, как описано в статье Целевая платформа и совместимость для Visual Studio 2019.)

Вы можете вручную обновить или перенести проект на более новую версию ToolsVersion. Такое изменение не является обязательным и, скорее всего, приведет ко множеству ошибок и предупреждений, которые потребуется исправить, чтобы сборка проекта снова стала возможной. Кроме того, если в Visual Studio перестанет поддерживаться определенная версия ToolsVersion, при открытии проекта будет запущен процесс его миграции, так как значение ToolsVersion должно быть изменено.

Следующие шаги

Дополнительные сведения см. в следующих статьях:

См. также

Каждая новая версия Visual Studio поддерживает большую часть типов проектов, файлов и других ресурсов. С ними можно работать как обычно, при условии, что вы не зависите от новых функций.

Мы стараемся сохранить обратную совместимость с предыдущими версиями, такими как Visual Studio 2019, Visual Studio 2017, Visual Studio 2015, Visual Studio 2013 и Visual Studio 2012. Однако поддержка некоторых типов проектов также со временем меняется. Новейшая версия Visual Studio может не поддерживать некоторые проекты или же потребовать обновить проект так, что он больше не будет обратно совместимым.

Observação

Текущее состояние проблем с миграцией см. в сообществе разработчиков Visual Studio. Просмотрите заметки о выпуске, чтобы узнать, какие функции к какой версии Visual Studio относятся.

Importante

Некоторые типы проектов требуют конкретных рабочих нагрузок. При отсутствии установленной рабочей нагрузки Visual Studio сообщает о неизвестном или несовместимом типе проекта. В этом случае проверьте параметры установки в Visual Studio Installer и повторите попытку. Дополнительные сведения о поддержке проектов в Visual Studio 2022 см. в статье Целевая платформа и совместимость.

Типы проектов

В следующем списке описывается поддержка проектов Visual Studio 2022, созданных в более ранних версиях.

Если здесь отсутствует проект или тип файла, который должен быть, проверьте версию Visual Studio 2019 в этом разделе. Чтобы привести детали проекта воспользуйтесь кнопкой Отправить отзыв о > эта страница в нижней части страницы. (При использовании анонимного элемента "Была ли эта страница полезной?" мы не можем отвечать на ваши отзывы.)

Тип проекта Поддержка
Проекты .NET Core (XPROJ) В проектах, созданных в Visual Studio 2015, использовались предварительные версии средств, включающие XPROJ-файл проекта.

Visual Studio 2017: Формат XPROJ поддерживается исключительно для переноса в формат CSPROJ. При открытии XPROJ-файла вам будет предложено перенести файл в формат CSPROJ в стиле SDK. (Будет создана резервная копия XPROJ-файла.) Проекты формата CSPROJ в стиле SDK не поддерживаются в Visual Studio 2015 и более ранних версиях.

Visual Studio 2019: В версии 16.3 и более поздних не удается загрузить или перенести проекты формата XPROJ. Дополнительные сведения см. в статье Перенос проектов .NET Core в формат .csproj.
Веб-приложение ASP.NET Core и веб-приложение ASP.NET Core с включенной службой Application Insights В Visual Studio сведения о ресурсах хранятся в реестре для каждого экземпляра пользователя. Эти сведения используются, если пользователь хочет найти данные Azure Application Insights, не открывая проект. Расположение реестра в Visual Studio 2015 отличается от расположения реестра в Visual Studio 2017, Visual Studio 2019 и Visual Studio 2022, поэтому конфликты отсутствуют.

Когда пользователь создает веб-приложение ASP.NET или веб-приложение ASP.NET Core, ресурс сохраняется в SUO-файл. Пользователь может открыть проект в Visual Studio 2015, Visual Studio 2017, Visual Studio 2019 или Visual Studio 2022,\ и сведения о ресурсе используются в каждой версии до тех пор, пока Visual Studio поддерживает проекты и решения, используемые в обеих версиях. Пользователям требуется пройти проверку подлинности один раз в каждой версии продукта. Например, если проект создается в Visual Studio 2017 и открывается в Visual Studio 2022, пользователю требуется пройти проверку подлинности в Visual Studio 2022.
Веб-форма или форма Windows C#/Visual Basic Этот проект можно открыть в Visual Studio 2022, Visual Studio 2019, Visual Studio 2017 и Visual Studio 2015.
Закодированный тест ИП Закодированный тест пользовательского интерфейса для автоматизированного функционального тестирования на основе интерфейса пользователя признан нерекомендуемым в Visual Studio 2019.

Visual Studio 2019 станет последней версией решения, в которой поддерживается закодированный тест пользовательского интерфейса. Мы рекомендуем использовать Selenium для тестирования веб-приложений и Appium с WinAppDriver для тестирования классических приложений и приложений универсальной платформы Windows.
Проекты модульных тестов базы данных (CSPROJ, VBPROJ) Старые проекты модульных тестов данных загружаются в Visual Studio 2019, но используют GAC-версию зависимостей. Чтобы обновить проект модульного теста для использования последних зависимостей, щелкните проект правой кнопкой мыши в обозревателе решений и выберите Преобразовать в проект модульного тестирования SQL Server.
F# Visual Studio 2019 поддерживает открытие проектов, созданных в Visual Studio 2013, Visual Studio 2015 и Visual Studio 2017. Ключевое отличие старых шаблонов Visual Studio для новых проектов заключается в том, что версия FSharp.Core сейчас всегда представляет собой пакет NuGet. F# устанавливается по умолчанию с любой рабочей нагрузкой .NET.
InstallShield
Установка MSI
Проекты установщика, созданные в Visual Studio 2010, можно открыть в более поздних версиях с помощью расширения проектов установщика Visual Studio. Также см. сведения о расширении набора инструментов WiX для Visual Studio 2017. InstallShield Limited Edition больше не входит в состав Visual Studio. Уточните доступность этого решения для Visual Studio 2022 у компании Flexera Software.
LightSwitch LightSwitch больше не поддерживается в Visual Studio 2022, Visual Studio 2019 или Visual Studio 2017. Проекты, созданные в Visual Studio 2012 и более ранних версиях и открытые в Visual Studio 2013 или Visual Studio 2015, обновляются и могут быть открыты только в Visual Studio 2013 или Visual Studio 2015.
Загрузить тест В Visual Studio 2019 возможности веб-тестов производительности и нагрузочных тестов являются нерекомендуемыми.

Visual Studio 2019 станет последней версией решения, в которой поддерживается нагрузочное тестирование. В связи с этим следует использовать альтернативные средства нагрузочного тестирования, такие как Apache JMeter, Akamai CloudTest, Blazemeter.
Инструменты Microsoft Azure для Visual Studio Для открытия этих типов проектов сначала установите пакет Azure SDK для .NET, а затем откройте соответствующий проект. При необходимости проект будет обновлен.
Microsoft Test Manager Начиная с Visual Studio 2019, Microsoft Test Manager и Feedback Client не поставляются в составе Visual Studio.

Для нужд ручного и произвольного тестирования используйте Azure Test Plans (в составе Azure DevOps). Подробнее см. в руководстве по использованию Microsoft Test Manager в документации по Azure DevOps.
Платформа MVC ("модель-представление-контроллер") (ASP.NET MVC) Поддержка версий MVC и Visual Studio:
  • Visual Studio 2010 с пакетом обновления 1 (SP1) поддерживает MVC 2 и MVC 3. Поддержка MVC 4 добавляется с помощью скачивания ASP.NET 4 MVC 4 для Visual Studio 2010 с пакетом обновления 1 (SP1).
  • Visual Studio 2012 поддерживает только MVC 3 и MVC 4.
  • Visual Studio 2013 поддерживает только MVC 4 и MVC 5
  • Visual Studio 2019, Visual Studio 2017 и Visual Studio 2015 поддерживают MVC 4 (можно открывать существующие проекты, но не создавать новые) и MVC 5

Обновление версий MVC:
Моделирование Если разрешить автоматическое обновление проекта в Visual Studio, его можно открыть в Visual Studio 2015, Visual Studio 2013 или Visual Studio 2012.

Формат проекта моделирования не изменился по сравнению с версией Visual Studio 2015, и проект можно открывать и изменять в этих версиях. Но в Visual Studio 2017 и Visual Studio 2019 существуют различия в поведении:
  • Теперь проекты моделирования называются в меню и шаблонах проектами проверки зависимостей.
  • UML-схемы больше не поддерживаются в Visual Studio 2017 и Visual Studio 2019. UML-файлы указываются в обозревателе решений, как и ранее, но открываются как XML-файлы. Для просмотра, создания или изменения UML-схем следует использовать Visual Studio 2015.
  • В Visual Studio 2019 проверка архитектурных зависимостей больше не выполняется при сборке проекта моделирования. Вместо этого проверка осуществляется при сборке каждого проекта кода. Это изменение не влияет на проект моделирования, но необходимо внести изменения в проверяемые проекты кода. Visual Studio 2019 автоматически вносит необходимые изменения в проекты кода.
Установка MSI (VDPROJ) См. раздел "Проекты InstallShield".
Office 2007 VSTO Требует одностороннего обновления до Visual Studio 2022.
Office 2010 VSTO Если проект предназначен для платформы .NET Framework 4, его можно открыть в Visual Studio 2010 с пакетом обновления 1 (SP1). Все остальные проекты требуют одностороннего обновления.
Переносимая библиотека классов (PCL) Переносимые библиотеки классов (или PCL) теперь не поддерживаются. Visual Studio 2019 по-прежнему будет поддерживать их открытие и сборку, однако создание проектов PCL будет невозможно. Рекомендуется выполнить перенос кода в проекте PCL в проект .NET Standard.

Поддержка PCL более не будет включена по умолчанию, однако будет доступна на вкладке "Отдельные компоненты" в Visual Studio.
Рабочая нагрузка Python В Visual Studio 2019 прекращена поддержка приложений Python Windows IoT Core. Так как в Visual Studio 2022 нет эквивалентной функции, для таких проектов отсутствует путь автоматического переноса.

Вы можете по-прежнему использовать Visual Studio 2017.
Средства R для Visual Studio В Visual Studio 2019 Инструменты R для Visual Studio были исключены из рабочей нагрузки обработки и анализа данных.

Вы можете по-прежнему использовать Visual Studio 2017 или такие альтернативные решения, как RStudio.
Service Fabric (SFPROJ) Проекты приложений Service Fabric, созданные в Visual Studio 2017 или Visual Studio 2019, можно открывать в Visual Studio 2022 без изменений.
Проекты приложений Service Fabric, созданные в Visual Studio 2022 без использования параметра Optimize project layout for ARM deployment (Оптимизировать макет проекта для развертывания с помощью ARM), можно открывать в Visual Studio 2019 16.5 или более поздней версии.
Проекты приложений Service Fabric, созданные в Visual Studio 2022 с использованием параметра Optimize project layout for ARM deployment (Оптимизировать макет проекта для развертывания с помощью ARM), можно открывать в Visual Studio 2019 16.10 или более поздней версии.
SharePoint 2010 Когда вы открываете проект SharePoint в Visual Studio 2022, он обновляется до SharePoint 2016 или SharePoint 2019. Для этого обновления в Visual Studio должна быть установлена рабочая нагрузка "Разработка классических приложений .NET".

Дополнительные сведения об обновлении проектов SharePoint см. в Обновление SharePoint.
SharePoint 2016 Проекты надстройки SharePoint, созданные в предварительной версии Office Developer Tools 2, невозможно открыть в Visual Studio 2022. Чтобы обойти это ограничение, в файле CSPROJ VBPROJ для MinimumVisualStudioVersion укажите 12.0, а для MinimumOfficeToolsVersion — значение 12.2.
Silverlight Проекты Silverlight не поддерживаются в Visual Studio 2022. Для поддержки приложений Silverlight продолжайте использовать Visual Studio 2015.
SQL — Redgate Компоненты Redgate SQL Change Automation Core (прежнее название ReadyRoll Core), SQL Prompt Core и SQL Search более не поставляются вместе с установщиком Visual Studio.

Вы можете по-прежнему использовать Visual Studio 2017, где эти возможности доступны. В Visual Studio 2019 вы можете выполнить обновление до платных продуктов SQL Change Automation и SQL Prompt, которые доступны в составе решения Redgate SQL Toolbelt.
Службы SQL Server Reporting Services и службы SQL Server Analysis Services (SSRS, SSDT, SSAS, MSAS) Поддержка этих типов проектов обеспечивается двумя расширениями из коллекции Visual Studio: Проекты моделирования Microsoft Analysis Services и проекты служб Microsoft Reporting Services. Поддержка SSDT также включена в рабочую нагрузку хранения и обработки данных в Visual Studio 2019. Дополнительную информацию см. на странице Скачивание и установка SQL Server Data Tools (SSDT) для Visual Studio.
Службы интеграции SQL Server (SSIS) Добавлена поддержка Visual Studio 2019. Подробнее см. в руководстве по скачиванию и установке SQL Server Data Tools (SSDT) для Visual Studio, записи блога команды разработчиков SQL Server Integration Services (SSIS), а также на странице проектов SQL Server Integration Services в Marketplace.
Расширение окна теста В Visual Studio 2019 были удалены некоторые API окон тестирования, которые были ранее помечены как общедоступные, но не были задокументированы официально. Эти API были помечены как "нерекомендуемые" в Visual Studio 2017, чтобы заранее предупредить группы обслуживания расширений. Насколько нам известно, с этими API была связана лишь незначительная часть расширений. Дополнительные сведения и обновления см. в полном списке устаревших API для тестирования. Если это затрагивает вас, сообщите нам об этом в сообществе разработчиков.
TypeScript TypeScript SDK является устаревшим в Visual Studio 2022 и больше не устанавливается по умолчанию в рабочих нагрузках. Проекты, которые компилируют TypeScript, должны установить пакет NuGet Microsoft.TypeScript.MSBuild. Для проектов, которые нельзя обновить сразу, TypeScript SDK по-прежнему предоставляется как дополнительный компонент в Visual Studio Installer и Visual Studio Marketplace.
Visual C++ Visual Studio 2022 можно использовать для работы в проектах, которые созданы в более ранних версиях Visual Studio (до Visual Studio 2010). При первом открытии проекта вы можете выполнить обновление до последней версии компилятора и набора инструментов или продолжить использование исходную версию. В этом случае Visual Studio 2022 не будет вносить изменения в файл проекта, используя набор инструментов из более ранней установки Visual Studio для сборки проекта. Сохранение исходных параметров означает, что при необходимости вы по-прежнему можете открывать проект в исходной версии Visual Studio. Дополнительные сведения см. в разделе Использование собственного многоплатформенного нацеливания в Visual Studio для сборки старых проектов.
Расширяемость Visual Studio/VSIX Проекты с минимальной версией 14.0 или меньше обновляются до минимальной версии 15.0, что не позволяет открывать проекты в более ранних версиях Visual Studio. Чтобы открыть проект в более ранних версиях, задайте $(VisualStudioVersion) в качестве значения минимальной версии. См. также Практическое руководство. Перенос проектов расширяемости в Visual Studio 2017.
Visual Studio Lab Management Microsoft Test Manager или Visual Studio 2010 с пакетом обновления 1 (SP1) можно использовать для открытия сред, которые были созданы в какой-либо из этих версий. Но версия Microsoft Test Manager должна соответствовать версии Visual Studio 2010 с пакетом обновления 1 (SP1), чтобы можно было создавать среды.
Средства Visual Studio для Apache Cordova В Visual Studio 2019 была прекращена поддержка Apache Cordova. Так как в Visual Studio 2022 нет эквивалентной функции, для таких проектов отсутствует путь автоматического переноса.

Вы можете использовать расширение средств Cordova для Visual Studio Code, которое обеспечивает поддержку последней версии Cordova, либо продолжить использовать Visual Studio 2017.
Веб-развертывание (WDPROJ) Поддержка проектов веб-развертывания прекращена, начиная с Visual Studio 2012, а вместо нее добавлена поддержка профиля публикации. Так как в Visual Studio 2022 нет эквивалентной функции, для таких проектов отсутствует путь автоматического переноса. Вместо этого откройте в текстовом редакторе файл WDPROJ, скопируйте любые настройки и вставьте их в файл PUBXML (профиль публикации), как описано на сайте StackOverflow.
Windows Communication Foundation, Windows Workflow Foundation Этот проект можно открыть в Visual Studio 2022, Visual Studio 2019, Visual Studio 2017, Visual Studio 2015, Visual Studio 2013 и Visual Studio 2012.
Windows Presentation Foundation Этот проект можно открыть в Visual Studio 2022, Visual Studio 2019, Visual Studio 2017, Visual Studio 2013, Visual Studio 2012 и Visual Studio 2010 с пакетом обновления 1.
Приложения Windows Phone Visual Studio 2022 не поддерживает проекты для Windows Phone.

Для поддержки приложений Windows Phone 8.x используйте Visual Studio 2015. Для поддержки проектов Windows Phone 7.x используйте Visual Studio 2012.
Приложения для Магазина Windows Visual Studio 2022 не поддерживает проекты для универсальной платформы Windows на JavaScript. Для поддержки этих проектов используйте Visual Studio 2017.

Из установщика Visual Studio 2019 были исключены версии пакетов SDK Windows 10, предшествующие обновлению Windows 10 Fall Creators Update (сборка 16299). Вы можете вручную скачать старые версии таких пакетов SDK или использовать их более новые версии.

Проекты для универсальной платформы Windows, в которых используется project.json, более не поддерживаются. Рекомендуется обновить эти проекты так, чтобы в них использовались ссылки на пакеты. Кроме того, вы можете добавить ссылку на файл Microsoft.NET.Test.Sdk версии 16.0.0.0 в файл project.json.

Visual Studio 2022 не поддерживает проекты для Microsoft Store 8.1 и 8.0. Для поддержки этих приложений продолжайте использовать Visual Studio 2015.
Xamarin Было исключено расширение Xamarin Live Player для Visual Studio и Visual Studio для Mac. В результате этого были удалены экран связывания и возможности интеграции. Вместо них следует использовать встроенное средство предварительного просмотра Xamarin.Forms.

Из Visual Studio Installer был удален эмулятор Visual Studio для Android. Вместо него следует использовать новые возможности поддержки Hyper-V в Google Android Emulator.

Миграция проекта

Хотя мы пытаемся сохранить совместимость с предыдущими версиями, существуют изменения, из-за которых некоторые типы проектов могут больше не поддерживаться. В таких случаях в более новой версии Visual Studio не будет загружаться проект или предлагаться путь миграции. С этим проектом необходимо будет работать в предыдущей версии Visual Studio.

Иногда проект может открываться в более новой версии Visual Studio, но он должен быть обновлен или перенесен, из-за чего может стать несовместимым с предыдущими версиями. Необходимость в миграции определяется в Visual Studio на основе ряда критериев:

  • совместимость с целевыми версиями платформ вплоть до Visual Studio 2013 RTM;

  • совместимость ресурсов времени разработки с предыдущими версиями Visual Studio (в частности, с различными каналами Visual Studio 2022, Visual Studio 2019; Visual Studio 2017, Visual Studio 2015 RTM и с обновлением 3, Visual Studio 2013 RTM и с обновлением 5, Visual Studio 2012 с обновлением 4 и Visual Studio 2010 с пакетом обновления 1); в случае использования нерекомендуемых ресурсов времени разработки в Visual Studio 2022 предпринимается попытка обработать их корректно, не повреждая их, чтобы проект по-прежнему мог открываться в предыдущих версиях;

  • нарушение совместимости с предыдущими версиями вплоть до Visual Studio 2013 RTM и с обновлением 5 из-за новых ресурсов времени разработки.

Группа разработчиков проекта оценивает эти критерии и создает запрос, если есть необходимость в поддержке, обеспечении совместимости и миграции. Мы пытаемся обеспечивать совместимость между версиями Visual Studio, чтобы проекты, создаваемые в одной версии Visual Studio, могли работать и в других версиях.

Иногда такая совместимость невозможна. Тогда в Visual Studio открывается мастер обновления для внесения необходимых односторонних изменений. Одним из этих односторонних изменений может быть изменение свойства ToolsVersion в файле проекта. Оно указывает, какая именно версия MSBuild может преобразовывать исходный код проекта в требуемые выполняемые и развертываемые артефакты.

Несовместимость проекта с предыдущими версиями Visual Studio зависит не от версии Visual Studio, а от версии MSBuild, определяемой свойством ToolsVersion. Если ваша версия Visual Studio включает в себя цепочку инструментов MSBuild, соответствующую значению свойства ToolsVersion в проекте, то она может вызывать эту цепочку инструментов для сборки проекта.

С целью обеспечения совместимости с проектами, созданными в предыдущих версиях, Visual Studio 2019 включает в себя необходимые цепочки инструментов MSBuild для поддержки значений ToolsVersion 15, 14, 12 и 4. Сборка проектов, в которых используется любое из этих значений ToolsVersion, должна выполняться успешно. (При этом необходимо учитывать, поддерживает ли Visual Studio 2019 данный тип проекта, как описано в статье Целевая платформа и совместимость для Visual Studio 2019.)

Вы можете вручную обновить или перенести проект на более новую версию ToolsVersion. Такое изменение не является обязательным и, скорее всего, приведет ко множеству ошибок и предупреждений, которые потребуется исправить, чтобы сборка проекта снова стала возможной. Кроме того, если в Visual Studio перестанет поддерживаться определенная версия ToolsVersion, при открытии проекта будет запущен процесс его миграции, так как значение ToolsVersion должно быть изменено.

Следующие шаги

Дополнительные сведения см. в следующих статьях:

См. также